Android性能优化指南

我们在刚开始撸码的时候就应该考虑到这个问题,良好的性能优化会大大提高用户体验,也能让程序运行更持久(主要还是持久)。

首先,我们得保证程序不能崩,比如在获取网络数据的时候要判断接口是否有数据,就算服务器崩了,我们前台也不会崩。这就需要我们有良好的逻辑思维了,有个笨方法,是个变量就判断一下。

其次,在程序运行时我们要减少性能消耗,比如在开发中需要刷新listview,很简单,但是如果数据很多呢,频繁的刷新岂不是很消耗性能,所以我们需要局部刷新来减少消耗。

然后就是我们在开发中需要注意到的:

1.布局优化

通俗点讲就是少点套路,尽量减少布局文件的层级,能让Dalvik运行时迅速找到控件。尽量使用LinearLayout和FrameLayout,RelativeLayout比较复杂,运行时会花费更多CPU时间。

2.绘制优化

不要在onDraw方法中创建新的对象,因为可能会被频繁的调用,会产生大量的临时对象,占用内存,降低效率。也不要在onDraw方法中做耗时任务。

3.响应速度优化

避免在主线程做耗时操作。这个大家应该都知道的,之前看的段子说,项目经理会要求哪里哪里睡几秒啊什么的,后期维护效果明显好拿钱,主要还是看需求了...

4.内存泄漏优化

就像是水龙头没有拧紧一样,一滴一滴,时间久了也能装满一桶。程序运行时间越长,占用内存越多,最终用尽全部内存,整个系统崩溃。

比如:

  • 广播注册没取消
  • 静态变量持有Activity的引用
  • 查询数据库后没有关闭cursor
  • 构造Adapter时,没有使用 convertView 重用
  • Bitmap对象不使用时没有释放内存
5.线程优化
尽量使用线程池,避免程序中出现大量的Thread,减少性能开销。


使用ADT自带工具DDMS可以检测内存泄漏,MAT工具也可以,地址http://download.eclipse.org/mat/1.3/update-site
使用方法网上有很多大笑


  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yechaoa

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值