LibChecker 核心功能全览
功能全景图
LibChecker 的功能可以分为五个核心模块:
| 模块 | 解决的问题 |
|---|---|
| 原生库分析 | App 用了哪些 .so 文件?是什么架构?是否 16KB 对齐?有没有剥离符号表? |
| 组件透视 | App 注册了哪些服务、活动、广播、内容提供器? |
| 知名库标记 | 这些组件里哪些是三方 SDK?叫什么名字?哪家开发的? |
| 引用统计 | 我的手机里最常见的三方库有哪些? |
| 快照对比 | App 从版本 A 升级到版本 B,内部结构发生了什么变化? |
模块一:原生库分析
进入任一应用详情页后,第一个可见的 Tab 就是原生库列表。这里可以看到:
- 每个 .so 文件的完整名称
- 所属的 ABI 架构目录(arm64-v8a / armeabi-v7a / x86 等)
- 是否被知名库规则匹配
- 是否 16KB 页面对齐
- 是否使用了未压缩存储
- 是否剥离了符号表
点击列表项可以看到原生库的详细元信息,包括路径、文件大小等。
模块二:组件与权限
四大组件(服务、活动、广播接收器、内容提供器)各有独立的 Tab,每个 Tab 显示该类型组件的数量和清单。权限页可以看到 App 声明了哪些权限以及对应的权限分组。元数据页展示 AndroidManifest 中的 <meta-data> 条目。
模块三:知名库标记
这是 LibChecker 的招牌功能。当列表中的组件名称匹配到规则库时,会在右侧显示对应 SDK 的徽标。轻击列表项弹出库详情弹窗,展示库名称、开发团队、规则贡献者、简介和相关链接。
模块四:引用统计
主页第二个 Tab,按引用次数排序展示设备中所有被识别出来的三方库。默认只展示原生库类型,可以切换到组件、权限等其他类型。可以设置阈值来过滤低引用率的库。
模块五:快照对比
保存当前所有应用的快照,当 App 更新后回到快照页面,可以看到哪些组件被新增、删除或修改了。支持两个任意快照之间的互比、快照备份恢复、以及对特定 App 的强制追踪。