14、 android性能优化总结
2016-03-06 22:17
351 查看
一、布局优化
1. 避免overDraw, 例如不要在父控件与子控件上设置重复的背景, 这些系统会重复绘制。
2. 优化布局层级,尽可能减少嵌套的层数。 例如使用 RelativeLayout进行定位代替多层 LinearLayout,而在相同层级的情况下,优化选择使用LinerLayout与FrameLayout, 因为 RelativiLayout对子控件的遍历操作会更加耗时。
3. 使用标签, 这样能提高 代码的利用性与可读性。
4. 使用标签,实现控件的延迟加载。
二. 内存优化
Bitmap的优化, bitmap是android中消耗内存的大户,所以对它的使用,要注意及时的加成收。
1. 调用bitmap.recycle()进行内存回收, android3.0后,bitmap放到了堆内存中,由GC负责回收。
2. 使用LruCache, DiskLruCache进行bitmap的缓存。 LruCache是android官方更加推荐的一种bitmap内存缓存方式,当然也可以使用软引用。
代码优化
1. 合理使用静态成员 ,与静态方法
2. 注意资源的回收,比如MediaPlayer,Cursor等。
3. 使用异步操作,避免ANR, 大量多线程操作应该使用线程池。
4. 避免内存泄漏,例如静态成员,单例模式靠成的内存泄漏。
1. 避免overDraw, 例如不要在父控件与子控件上设置重复的背景, 这些系统会重复绘制。
2. 优化布局层级,尽可能减少嵌套的层数。 例如使用 RelativeLayout进行定位代替多层 LinearLayout,而在相同层级的情况下,优化选择使用LinerLayout与FrameLayout, 因为 RelativiLayout对子控件的遍历操作会更加耗时。
3. 使用标签, 这样能提高 代码的利用性与可读性。
4. 使用标签,实现控件的延迟加载。
二. 内存优化
Bitmap的优化, bitmap是android中消耗内存的大户,所以对它的使用,要注意及时的加成收。
1. 调用bitmap.recycle()进行内存回收, android3.0后,bitmap放到了堆内存中,由GC负责回收。
2. 使用LruCache, DiskLruCache进行bitmap的缓存。 LruCache是android官方更加推荐的一种bitmap内存缓存方式,当然也可以使用软引用。
代码优化
1. 合理使用静态成员 ,与静态方法
2. 注意资源的回收,比如MediaPlayer,Cursor等。
3. 使用异步操作,避免ANR, 大量多线程操作应该使用线程池。
4. 避免内存泄漏,例如静态成员,单例模式靠成的内存泄漏。
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories