zl程序教程

您现在的位置是:首页 >  移动开发

当前栏目

安卓性能监控(APM)之内存占用监控

2023-09-27 14:27:30 时间

目标

监控app使用的内存以及系统可用内存等内存相关信息.

方案

  1. 周期性监控,如10秒或1分钟等.
  2. 获取内存占用信息.
  • 获取系统内存信息
ActivityManager.MemoryInfo()

availMem:系统可用内存大小。
totalMem:系统总共内存大小
threshold:系统开始kill后台服务和进程的内存阈值大小
lowMemory:系统处于低内存时该值为true

  • 获取App占用内存信息
Runtime.getRunTime()

maxMemory:App最大可用内存
freeMemory:App可用内存大小
total_memory:App当前占用内存

  • 获取App Native部分占用内存信息
Debug.getNativeHeapSize()
Debug.getNativeHeapAllocatedSize()
Debug.getNativeHeapFreeSize()

Debug.getNativeHeapSize(): native heap大小
Debug.getNativeHeapAllocatedSize() : 获取native已分配的内存大小
Debug.getNativeHeapFreeSize(): 获取native可用内存大小

源代码

https://gitee.com/cxyzy1/MyAPM

参考资料

https://juejin.im/post/5a420e6d518825519408e0ca

关注头条号,第一时间获取最新文章: