Android 内存优化
来源:互联网 发布:网络诈骗50万100万 编辑:程序博客网 时间:2024/05/22 15:22
Android 内存优化一(Mat)
Android发生内存泄漏最普遍的一种情况就是长期保持对context,一些static 静态变量的使用,Bitmap没有及时回收导致的OOM异常,特别是Activity的引用,使得Activity无法及时被销毁。
从而也使Activity中所有的成员变量也没办法及时的销毁。这里我主要是讲解下 Bitmap没有及时回收导致的OOM异常!
这里我用的是Eclipse 插件Mat,
下载地址:https://yunpan.cn/crFkevqrE4SCM (提取码:e0fd)由于这里我下载的插件并不是最新的,为此在安装插件的时候需要更新安装,避免出现安装错误!
Mat 插件工具 ,具体的操作步骤如下:
1、打开DDMS
图 一
点击这个按钮之后需要等待一段时间,然后会生成一个.hprof文件,这个文件记录着我们应用程序内部的所有数据。由于我是直接使用Mat插件,因此无需使用命令来阅读该文件
2、图一过渡到图二需要一定的时间。在这里我们更多需要知道的是 这两个选项卡 "Histogram"、"dominator_tree" 这里我着重的讲解下 "dominator_tree"选项卡的使用
图 二
图 三
3、点击图三 中的 Dominator Tree 选项卡进入相应的界面,从而能够一览无余的浏览图片的应用,为了更方便的观看当中的图片的一些数据
我们可以打开 Window -> show View-> Ohter -> Inspector 窗口
图 四
Inspector 窗口 ,注意观察的是在这个窗口中我需要关注的焦点是 mBuffer 、mHeight、mWidth 三个字段,他们分别表示的是 mBuffer表示的是图片Bitmap图片的byte
字节,mHeight表示的是 图片的高,mWidth 表示的是图片的宽。有了这些信息之后我们就可以明确图片的一些相关属性信息!
二、在MAT中发现和图片相关的内存泄露的时候, 如果能知道是那一张图片,对分析问题会有很大的帮助. 有了这些相关信息,我们就可以更近一步的了解相关问题所在了!
接下来就是具体实现哪一张图片内存泄露了!
- 【Android】 Android 内存优化
- android 内存优化 性能优化
- android 内存优化 性能优化 .
- Android 性能优化、内存优化
- Android 性能优化、内存优化
- Android 性能优化、内存优化
- Android-性能优化-内存优化
- Android性能优化-----内存优化
- Android-内存优化-首页内存占用优化
- android内存管理优化
- android内存优化
- android,内存优化详解
- android 内存溢出优化
- android,内存优化详解 .
- android内存泄露优化
- Android 内存优化测试
- android图片内存优化
- Android 内存优化测试
- SQL Server中的事务与锁
- QT5.5 webengine 打开browser 后调用 web 的 JavaScript
- CodeForces 443A Anton and Letters
- android 常用的 默认开关的 意义
- Android多屏适配
- Android 内存优化
- 给 Android 开发者的 RxJava 详解
- 用UIColloctionView 实现cell放大以及无限轮播
- Codeforces 514A Chewbaсca and Number
- hadoop2.7.1的一些新特性
- Hadoop YARN学习之核心概念(2)
- 检查本机字节序方法
- LeetCode_66. Plus One_数组加一
- Java学习第8天(5):面向对象-继承-接口