内存优化

虚拟机的堆内存

adb shell cat /system/build.prop|grep dalvik.vm.heapstartsizeadb shell cat /system/build.prop|grep dalvik.vm.heapstartsize
关注如下:
- dalvik.vm.heapstartsize
开始的时候的堆大小,这个越小,可以开的越多,如果越大则一开始程序启动的时候速度就会比较快
- dalvik.vm.heapgrowthlimit
实际单个应用程序使用的最大内存
- dalvik.vm.heapsize
实际单个进程能使用的最大内存,如果heapgrowthlimit存在,则heapgrowthlimit生效

内存阈值调整

  • /sys/module/lowmemorykiller/parameters/adj
    此处放置的是优先等级编号,对于大于min_adj的进程,找到内存占用最大的进行清理
  • /sys/module/lowmemorykiller/parameters/minfree
    此处放置的是对应的最小释放阈值,到了某个阈值就会停止比这个高的所有level的进程

关于内存清理
通过SIGKILL信号清理
进程类型优先级
前台进程 > 可见进程 > 桌面进程 > 次要服务 > 后台进程 > 内容供应节点 > 空进程

内存隐患

  1. static
  2. Bitmap
  3. Background Picture
  4. View
  5. Application引用了Activity
  6. BroadCastReceiver/Service解绑
  7. Handler清理
  8. Cursor关闭
  9. IO流关闭
  10. 线程
  11. StringBuffer拼接

更多相关文章

  1. 「抄底 Android 内存优化 1」—— 虚拟内存
  2. 使用valgrind检测Android native程序的内存
  3. Android最佳实践之Notification、下拉刷新、内存及性能建议等
  4. android wifi RSSI达到阈值自动断开
  5. Android bitmap内存优化测试
  6. Android通过共享用户ID来实现多Activity进程共享
  7. [置顶] android 内存泄露那些事情之Handler(一)
  8. Android之进程查看,关闭(可操作所有进程)
  9. Android InputMethodManager 导致的内存泄露及解决方案

随机推荐

  1. Android(安卓)WindowManager悬浮窗:不需要
  2. Android布局自定义Shap圆形ImageView,可以
  3. android解析xml文件的方式(其一)
  4. Android开发者已经度过了初级吗
  5. Fedora 下配置 Android 开发环境
  6. Android(安卓)listview与adapter用法
  7. Android(安卓)Fragment 真正的完全解析(下
  8. Android面试系列文章2018之Android部分之
  9. Padding与绘制区域--android:clipToPaddi
  10. Android svg图片使用