SuperAPI AI 工具集

android-package-diagnostics

通用与其它

查看项目

更新于 10-16 03:15

技能介绍

用途:在不接触应用界面、不使用 root 的前提下,报告已安装 Android 包的非 UI 事实,包括版本、签名摘要、安装来源、请求与授予的权限、APK 路径与哈希、崩溃与 ANR、以及一次性性能数据。

主要能力:scripts/pkgdiag.py 仅用标准库,把单个应用动辄 700 多行的 dumpsys package 输出,连同 logcat、meminfo、gfxinfo 浓缩为简短结构化报告。子命令包括 report(一次性摘要,--json 供机器使用)、permissions(逐项权限及真实状态,区分安装时与运行时权限,危险权限从设备读取而非硬编码表)、crashes(崩溃与 ANR)、perf(运行中应用的内存与帧卡顿)、apk(路径、大小、SHA-256,可 --pull 拉取并用 aapt2 dump badging 读取标签、SDK 版本与 ABI)。

使用方式:以 python3 "${CLAUDE_SKILL_DIR}/scripts/pkgdiag.py" <cmd> <package> 运行,例如 pkgdiag.py report org.fdroid.fdroid。查崩溃前先 adb logcat -c 清空缓冲再复现。

适用场景:隐私权限审计、安装来源与签名比对、崩溃排查、快速性能取样、APK 取证。

限制:非 root 是硬约束,Play 签名镜像无法 adb root。无法读取 /data/data 私有文件、数据库与 SharedPreferences;无法解密 TLS 流量;无法枚举追踪器或 SDK(需 jadx、exodus 等静态分析);签名仅为短摘要,完整证书链需 apksigner verify --print-certs;电池归因需重置并受控运行。perf 需应用在运行,帧卡顿需先有交互渲染。adb install -g 会预授予全部运行时权限,导致审计结果虚高,应不带 -g 安装。日志为环形缓冲,可能已滚出。拆分 APK 属正常,单个 base.apk 并非完整应用。遇到限制会明确说明,而非静默绕过。