Android优化(内存、流畅度)

来源:互联网 发布:取消3.5mm耳机接口知乎 编辑:程序博客网 时间:2024/05/11 15:52

·内存(占用、泄露)

·流畅度(UI流畅度(帧数、响应时间)、IO(阻塞式响应时间))

工具:

1.DDMS :Heap、Allocation Tracker2.MAT(Memery Analyzer):Top Components、Histegram(每个Class占用内存)3.Debug(对于Heap来说,超过16MB,会OOM(泄露))

内存占用常见形式:

1.static(单例)2.多线程生命周期过长未被释放3.Bitmap4.Cursor

影响UI流畅度:

1.主线程忙碌2.阻塞式方法执行时间过长3.不合理的UI绘制工具:Method profile(寻找缺陷方法(DDMS))     GT(Great Tit,获取响应时间)

Android绘制UI:

读取XML(inflate)计算大小(measure)布局坐标计算(layout)绘制到屏幕(draw)

IO:

SQLite、XML类:    优点:稳定、可靠、保证原子性    缺点:效率低文件类:    优点:简单、快速    缺点:无原子性保证

IO优化:

SQLite(Read):    1.异步化    2.预判+缓存    3.避免复杂的查询语句    4.select..from..where..group by..having..order by..limitSQLite(Write):    1.异步化    2.仅支持文件锁    3.善用索引——多用int类型索引    4.善用事物机制    5.update..where..读&写:    异步返回只读不写:    同步进行(评估耗时)只写不读:    放在队列里面就好
0 0
原创粉丝点击