Android性能优化

Android中的性能优化主要包括:

1.布局优化

2.绘制优化

3.内存优化

4.响应速度优化

5.listview优化

6.bitmap优化

 

1.先讲一下布局优化:尽量减少布局层级,relativeLayout性能比LinearLayout性能差一些,当层级比较多的时候尽量使用RelativeLayout,当层级比较少的时候尽量使用LinearLayout

<include>可以重用布局,<merge>可以减少层级,<ViewStub>先不加载布局,只有在用到的时候再加载。

2.view的draw操作会执行多次,所以不能在draw中进行大量操作

 (1)onDraw方法中不要创建新的局部对象,因为onDraw方法可能被频繁的调用,这样一瞬间会产生大量的临时对象,这些对象不仅占用了过多的内存,而且还会导致系统频繁的gc,降低了程序的执行效率。 造成内存抖动。
 (2)onDraw方法中不要执行耗时任务,也不能执行成千上万次的循环操作,大量的循环十分抢占CPU的时间片,这会造成view的绘制过程不流畅。

3.内存泄漏:

  内存泄漏应该从两个方向上来分析:(1)尽量避免内存泄漏的代码 (2)要使用一些内存分析工具来查找,比如mat,monitor等

4.listview的优化

  (1) 使用viewHolder来避免在getView()中进行重复初始化。

  (2) 根据事件来判断,当正在滚动时应尽量避免加载网络图片或其他事件。

  (3) 开启硬件加速。

5.bitmap优化:

  主要是通过BitmapFactory.Options来根据需要对图片进行采样,采样的过程主要使用到了BitmapFactory.Options 
来根据需要对图片进行采样,采样的过程主要使用到了BitmapFactory.OptionsinSampleSize参数

 6.线程优化:

  主要是采用线程池来避免重复创建线程。

 

posted @ 2019-01-17 10:17  鲨鱼也疯狂  阅读(133)  评论(0编辑  收藏  举报