工具介绍
该工具面向Android测试人员。在设备端选择已安装应用后,它会持续通过pidof、ps、dumpsys meminfo和dumpsys activity activities等ADB shell命令采集进程内存与Activity信息,并在悬浮窗中实时显示PSS、Private Dirty、内存中的Activity数量以及栈中的Activity数量。开始记录后,工具会把测试会话摘要和逐次采样结果写入本地数据库。如果目标应用是可调试版本,还可以在结束前触发GC,执行am dumpheap -g抓取HPROF,并用Shark和LeakCanary对已销毁Activity与已移除或已分离Fragment进行堆分析。输出物包括本地报告列表、每次采样的泄漏明细、可分享或导出的HPROF文件,以及工具自身日志文件。代码中没有显示云端同步、自动修复或跨平台支持,因此它更适合Android端的人工测试、回归检查和问题复现,而不是通用APM平台。
核心能力
通过ADB shell周期性执行dumpsys meminfo和dumpsys activity activities,实时更新PSS、Private Dirty、内存中的Activity数量和栈中的Activity数量。
对于可调试目标应用,工具会在需要时触发GC、抓取HPROF,并使用自定义Shark和LeakCanary过滤逻辑分析已销毁Activity与已移除或已分离Fragment。
测试会话、逐次泄漏明细和HPROF路径会保存到本地数据库,报告详情页支持浏览、分享或导出HPROF文件。
适用测试场景
- 在手工回归测试中观察某个Android应用的PSS、Private Dirty和Activity数量变化,快速发现内存持续增长迹象。
- 针对页面反复进出、Activity跳转或返回流程,利用内存中的Activity数量与栈中的Activity数量差异排查可疑Activity泄漏。
- 在调试版应用上结束测试时抓取HPROF,并用Shark和LeakCanary为Activity或Fragment泄漏提供堆分析证据。
- 保存本地测试会话报告,并在报告详情页查看逐次采样结果、分享HPROF或将HPROF导出给开发人员进一步分析。
环境与依赖
- 运行平台
- Android设备上的独立APK,用于监控同一设备上已安装的目标Android应用。
- 系统范围
- 构建配置为minSdkVersion 21、targetSdkVersion 35,并对Android 8.0及以上版本的前台服务和悬浮窗类型做了兼容处理。
- 接入方式
- 在设备上安装并启动工具后,从已安装应用列表中选择一个目标应用。工具通过本地ADB连接,默认连接到localhost:5555,并以前台服务悬浮窗展示实时指标。
- 工具包
- memory_check_v1.1.8.apk
权限与依赖
- 需要授予悬浮窗、管理外部存储、通知和忽略电池优化等权限,Manifest中还声明了前台服务、外部存储、电话状态和系统提醒窗口相关权限。
- 目标设备需要开启ADB调试,并允许工具建立到localhost:5555的ADB连接。
- 自动抓取和分析HPROF依赖目标应用可调试。非调试版仍可记录内存指标和Activity数量差异。
- 项目内置GreenDAO用于本地报告存储,内置LeakCanary与Shark用于HPROF分析。
支持范围与说明
明确支持
- 项目是Android应用,构建配置明确为minSdkVersion 21和targetSdkVersion 35。
- 主流程要求从已安装应用列表中选择一个目标应用,并通过前台服务悬浮窗显示实时指标。
- 代码直接调用dumpsys meminfo、dumpsys activity activities、pidof或ps、run-as kill -10以及am dumpheap -g。
- 报告数据由GreenDAO持久化,包含会话摘要、每次采样的内存值、Activity计数、栈信息和HPROF路径。
- 报告详情页支持分享或导出HPROF文件,日志会写入应用外部文件目录下的log目录。
合理推断
- 该工具更偏向人工测试和回归排查,而不是无人值守的持续监控,因为核心交互依赖应用选择、悬浮窗控制和本地报告查看。
- 它主要服务于单设备、单目标应用的测试流程,因为当前UI一次只允许选择一个目标应用。
- 当目标应用不是调试版时,报告更适合作为可疑线索而非最终结论,因为自动HPROF抓取与堆分析路径不会启用。
- 把实时内存采样、Activity差异检测、调试版HPROF抓取和本地报告管理合并到同一个设备端流程中。
- 采集逻辑直接基于dumpsys meminfo、dumpsys activity activities、pidof或ps以及am dumpheap等ADB shell命令,便于把结果对应到系统层信号。
- 通过前台服务悬浮窗持续展示目标应用名、PSS、Private Dirty和Activity计数,适合边操作边观察。
- 明确区分调试版与非调试版目标应用能力,避免把不支持HPROF自动导出的场景误写成全功能支持。
下载与使用说明
- 版本
- v1.1.8
- 工具包
- APK
- 大小
- 7.2 MB
- 更新时间
- 2026-05-22
- 下载
- 登录后下载
工具以本地运行和真实 QA 工作流为前提设计,适合安卓 App 专项测试,不依赖外部测试平台。