通过ADB 触发gc

复制代码
adb shell dumpsys meminfo cn.com.x.main -gc

详细拆解

  • dumpsys meminfo: 原本是用来查看内存详情的工具。

  • gc : 这是一个隐藏的子指令。当 meminfo 带着 gc 参数指向某个包名时,系统会先对该进程触发一次 强制同步 GC,然后再收集内存数据。

  • cn.com.x.main: 目标 App 的包名。

Mac/Linux (每 5 秒自动触发并查看结果):

复制代码
watch -n 5 "adb shell dumpsys meminfo cn.com.x.main -gc | grep TOTAL"

windows下 powershell 中每5s gc 一下:

复制代码
while($true) { adb shell dumpsys meminfo cn.com.x.main -gc; sleep 5 }

内容分析:

  • PSS Total: 158,437K (约 155MB) 在电视盒端,这个内存占用属于中等偏高

  • 内存分布情况:

    • Dalvik (Java 内存): 81,012K ------ 这是 App 逻辑占用的主要部分,说明 Java 层的对象较多。

    • Native (原生内存): 84,255K ------ 这部分通常包含图片解码、视频渲染缓冲区或 C++ 层插件。

    • Mmap (.so/.dex/.art): 约 100MB+ ------ 这些是代码和资源的映射,属于正常开销。

这是一台 Low-Ram(低内存) 设备,从以下指标可以看出:

  • Total RAM: 980,444K (标称 1GB)

  • Free RAM: 仅 69MB (空闲内存极低)

  • Used RAM: 726,321K

  • ZRAM: 90,772K 物理内存压缩了 278MB 的数据

    • 分析 :系统已经在拼命压缩内存以维持运行了。Swap Pss 达到了 244MB ,这意味着 cn.com.x.main 里的很多数据其实被置换到了压缩内存里。当你操作 App 时,可能会感觉到轻微的卡顿,因为系统需要不断地解压数据。
相关推荐
lucky67071 天前
Laravel6.x新特性全解析
数据库·mysql·adb
秋氘渔1 天前
MySQL EXPLAIN命令详解:SQL查询性能分析与优化指南(基础篇)
sql·mysql·adb
半桔2 天前
【MySQL数据库】SQL 查询封神之路:步步拆解核心操作,手把手帮你解锁高阶玩法
linux·数据库·sql·mysql·adb·oracle
桂花很香,旭很美2 天前
ADB 安卓实战手册
android·adb
limingade5 天前
ADB应用浅析-普通手机app不依赖电脑如何获取ADB权限
adb·智能手机·android应用·手机无线调试adb·手机adb抓取屏幕画面·无线调试抓屏·adb授权
limingade5 天前
重启手机后-自动领金币app如何独自取到ADB权限进行手机操作
物联网·adb·智能手机·ocr识别手机广告·adb自动关闭广告·手机adb授权·自动领金币app
·云扬·6 天前
MySQL基于位点的主从复制完整部署指南
android·mysql·adb
大鹏说大话6 天前
MySQL 8.0 性能优化全攻略:索引、查询与配置调优的实战指南
adb
t***44237 天前
MySQL 导出数据
数据库·mysql·adb