统计页面按类型切换的技巧
有哪些类型可以切换
库引用统计支持以下展示类型:
| 类型 | 匹配维度 | 典型发现 |
|---|---|---|
| 原生库 | .so 文件名 | 最常见的三方库(如 tinker、fresco、webrtc) |
| 组件 | 服务/活动/广播/Provider 的类名 | 某些 App 引入了热更新、广告组件 |
| 权限 | Manifest 中的权限声明 | 哪些权限被滥用 |
| Intent Action | 广播 Action、Activity 匹配 | 常见的自启动触发方式 |
| 元数据 | meta-data 键值对 | Firebase、微信等 SDK 的 AppID |
| 签名 | 应用签名证书 | 同签名 App 的关系发现 |
| 包名前缀 | 包名的反向域名前缀 | 某厂商出品的所有 App |
| sharedUserId | sharedUserId 值 | 共享沙箱的 App 对 |
什么时候切换
- 排查自启动:切到 Intent Action,看 BOOT_COMPLETED、CONNECTIVITY_ACTION 等热门广播被多少 App 监听
- 广告 SDK 排查:切到原生库,搜索常见广告 SDK 名称(如 com.bytedance、com.tencent.qq)
- 共享 UID 发现:切到 sharedUserId,找同 UID 的 App 组
- 权限滥用:切到权限类型,看哪些高敏感权限被大量普通 App 声明
性能说明
作者在官方文档中提到:列表默认只加载原生库类型是出于性能考虑。其他类型的匹配需要遍历更多字段,耗时相对较长。