LibChecker 的规则库工作原理
规则库是什么
LibChecker 的知名库标记功能依赖一份开源的规则仓库——LibChecker-Rules。规则以数据库形式(db 文件)分发,每条规则描述一个"已知的三方库或 SDK",以及如何匹配到 APK 中的具体条目。
规则匹配可以覆盖多个维度:
- 原生库名称(.so 文件名)
- 组件完整类名
- 权限声明
- 元数据键值对
- 包名前缀
- sharedUserId
- 签名
- Intent Action
本地与云端的协作
LibChecker 的标记库由两部分组成:
- 主程序本地内置规则:随 APK 打包分发,保证基础覆盖
- 云端规则仓库:需要用户手动开启"云端规则更新",从远程拉取最新规则

匹配到规则后,列表项右侧会显示对应 SDK 的彩色徽标。点击弹出详情弹窗。
规则库的贡献
LibChecker-Rules 是开放贡献的——任何人都可以提交 Pull Request 来补充新的库识别规则。规则需要按照仓库模板格式提交,包含库名称、开发者、简介、匹配规则等字段。
规则库版本追踪
规则库有版本号(目前已迭代到 v44+),LibChecker 会在设置中显示当前使用的规则库版本,并提示是否有新版本可更新。
Gitee vs GitHub
国内网络环境可能无法访问 GitHub 规则仓库。LibChecker 设置中提供了手动切换云端仓库的选项:
- 国内网络 → 切换到 Gitee 镜像
- 国外网络 → 使用 GitHub 官方仓库