Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

新增应用包分析,扫版进入维护模式,设置与个性化设置页改为 Side Sheet #99

Merged
merged 19 commits into from
Jan 22, 2025

Conversation

ArcticFoxPro
Copy link
Collaborator

@ArcticFoxPro ArcticFoxPro commented Jan 20, 2025

这个 PR 解决了什么问题?

请补充以下信息

需求背景

更详细的应用包分析,根据 QQ/TIM 包 Dex 导包名分析使用的库。

更新日志

新增

  • 新增:应用包分析。长按首页顶部“本机 QQ/TIM”卡片或分享 QQ/TIM 安装包至 QQ 版本列表实用工具即可进入应用包分析页

优化

  • 优化:设置页与个性化页改为 Side Sheet
  • 优化:去除在部分机型进入 实验性功能 - TDS 腾讯端服务 Shiply 容器与发布平台更新获取 - 进阶配置 时,底部导航区域存在的系统添加的遮罩
  • 优化:微信扫版时,用户输入的主版本号将被自动去除小数点

其它更改

  • 扫版进入维护模式:

    由于 Android QQ 和 Android TIM 的较新版本越来越倾向于使用包含特征码的下载直链,使得通过枚举法获取到 Android QQ 和 Android TIM 的下载直链变得异常困难。基于此,QQ 版本列表实用工具的扫版功能进入维护模式。

    扫版进入维护模式意味着什么?

    • 现行相关功能仍可继续使用;
    • 不再对相关功能进行积极开发,也不再接受相关新功能请求;
    • QQ 版本列表实用工具不再对相关功能及其任何后果作出任何可靠性保证。使用时请明确并确保自身具备足够的风险识别和承受能力。
  • 微信扫版链接从 dldir1.qq.com 变更至 dldir1v6.qq.com

上游更改

  • 新增:Jetpack Lifecycle LiveData Kotlin Extensions(androidx.lifecycle:lifecycle-livedata-ktx)2.8.7
  • 新增:Jetpack Lifecycle ViewModel Kotlin Extensions(androidx.lifecycle:lifecycle-viewmodel-ktx)2.8.7
  • 新增:Jetpack Activity(androidx.activity:activity)1.10.0
  • 新增:Smali Dexlib2(com.android.tools.smali:smali-dexlib2)3.0.9
  • 新增:Apache Commons IO(commons-io:commons-io)2.17.0
  • 更新:Jetpack Activity Kotlin Extensions(androidx.activity:activity-ktx)更新至 1.10.0
  • 更新:Jetpack DataStore Preferences(androidx.datastore:datastore-preferences)更新至 1.1.2
  • 更新:Firebase Android 物料清单(com.google.firebase:firebase-bom)更新至 33.8.0
  • 更新:Jetpack RecyclerView(androidx.recyclerview:recyclerview)更新至 1.4.0
  • 更新:Kotlin Coroutines on Android(org.jetbrains.kotlinx:kotlinx-coroutines-android)更新至 1.10.1(build(deps): bump the maven-dependencies group with 2 updates #98

自检清单

请确认下列所有选项并打勾

  • 此 PR 已实现我的所有预期更改,可以被合并。
  • 我确认此 PR 全部代码仅由本人(或联合作者)编写,代码所有权归本人(或联合作者)所有。
  • 此 PR 更新日志已提供(或无须提供)。
  • Readme 文档无须补充(或已补充)。

请确认下列选项并打勾。如不认可选项内容或存在需备注内容,请在选项旁随附补充说明。

  • 我认可并确认我贡献的代码将以 GNU Affero General Public License Version 3 开源许可进行发行。
  • (单项选择)若后续项目决定更改开源许可:
    • 请通知我并等待我的决定
    • 无需通知,我授权项目所有者自行决定我的贡献的开源许可变更。
    • 其他,请补充说明:_______

- 将 ExtendedFloatingActionButton 更改为 FloatingActionButton
- 添加维护模式警告信息到对话框
- 更新版本号至 1.4.8
- 修正部分实验性功能描述
- 优化代码结构,提高可维护性
- 新增 DexResolver、EnumDexContainer 等类,用于解析和处理 Dex 文件
- 实现了加载 Dex 文件、查找特定包名等功能
- 优化了 Dex 文件的枚举和解析过程,提高了性能和内存使用效率
- 添加了 Apache License 2.0 开源许可证文件
- 新增多个官方标识的矢量图形文件,包括腾讯灯塔、Bugly、Hippy等
- 添加 Flutter 标识的深蓝色版本
- 删除 Kuikly 标识的非官方版本
- 更新 activityKtx 和 activityVersion 到 1.10.0
- 更新 datastorePreferences 到 1.1.2
- 更新 firebaseBom 到 33.8.0
- 更新 recyclerview 到 1.4.0
- 添加 commonsIo 依赖
- 移除 jsoup 依赖
- 添加 smaliDexlib2 依赖
- 更新其他依赖的版本
- 在 ShiplyAdvancedConfigFragment 中添加了对 Android Q 及以上版本的特殊处理
- 设置 navigationBarContrastEnforced 为 false,以优化导航栏的视觉效果
- 新增了多个与应用详情页相关的字符串资源
- 更新了部分现有字符串的描述
- 添加了多个技术栈和平台的描述信息
- 新增了错误提示和用户协议相关的字符串
- 移除了 GradleMigrationSettings 组件
- 将 gradleJvm 选项从 #GRADLE_LOCAL_JAVA_HOME 修改为 jbr-21
- 新增 Compose 图标 XML 文件
- 图标来源于 JetBrains Compose Multiplatform 官方
- 优化图标样式和尺寸,适配应用主题
- 将 Kuikly标识从 unofficial 更改为 official
- 调整版本项布局的上下内边距为 2.5dp
- 修改涉及 QQ 版本项、QQ 版本详情、TIM 版本项和 TIM 版本详情的布局文件
- 使用 Apache Commons IO 库的 IOUtils.toString 方法替换原有的 reader().readText() 方法
- 指定 Charset.defaultCharset() 以确保正确处理字符编码
- 代码中添加了必要的导入语句
- 移除 .idea 目录下的多个配置文件
- 更新 gradle.xml 中的 Java 版本引用
- 删除 Kotlin 编译器配置
- 简化 misc.xml 中的项目根目录配置
- 在 LocalQQAdapter 和 LocalTIMAdapter 中添加新页面跳转逻辑
- 使用 Intent 启动 LocalAppDetailsActivity,传递 App 类型参数
- 优化长按卡片展示详细信息的逻辑,保留原有功能
- 新增 activity_local_app_details.xml 布局文件- 添加箭头图标 arrow_left_line.xml
- 实现应用详情页面的卡片式布局结构
-包含应用信息、版本号、SDK信息等展示内容
- 新增 LocalAppDetailsActivity 用于显示本地应用详细信息
- 在 AndroidManifest.xml 中添加相关活动声明和意图过滤器
- 调整 dialog_local_qq_tim_info.xml布局的样式
- 使用 SideSheetDialog 替代 MaterialAlertDialogBuilder 创建设置对话框
- 添加版本列表加载状态的 LiveData 观察者
- 优化系统版本判断逻辑,使用 SDK_INT 替代 Build.VERSION.SDK_INT
- 重构微信版本解析逻辑
- 更新 Shiply 相关的版本信息获取方式
- 使用 ConstraintLayout 替换 LinearLayout 作为根布局
- 添加标题 TextView 并调整样式
- 调整按钮位置和样式
- 优化滚动视图布局
- 统一 padding 和 margin 值
- 新增使用新本地详情页的设置项
- 在 README.md 中添加了应用包分析功能的说明,介绍如何在 QQ 版本列表实用工具中查看本机 QQ/TIM 的应用包分析,以及如何通过系统分享 APK 文件进行分析
- 更新了 Kuikly 跨端开发框架的描述,将其定位为 TDS 腾讯端框架的一部分
- 在参考项目部分添加了新的开源项目 Boundo 和 Smali/Baksmali,并移除了未来可能使用的 Jsoup 项目的注释
- 在处理 QQ/TIM 包名时,增加对 TIM 版本的特殊处理
- 使用 isTIM 观察者替代 type 字段,提高代码可读性和可靠性
@ArcticFoxPro ArcticFoxPro merged commit 41b4e8b into klxiaoniu:master Jan 22, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants