提高app响应速度

一个是响应速度,要保证界面之间跳转的时候没有延迟,也就是说要保证onClick之后,

1. Activity/Fragment的onPause()方法不会占用主线程太多时间
2. onClick()事件里面不要写耗时的操作,尽量放在
3. 新的Activity的create、start、resume等生命周期函数不要占用太多时间
耗时操作可以等界面初始化好之后再去做,这样才能保证响应速度能达到用户可以接受的程度!

另外一个是流畅性,这个就是说用户在某个界面操作的时候,不要出现卡顿(掉帧)的情况!这种情况比较复杂,所以要case by case地去解决!推荐用Systrace和Method Trace等性能工具来发现和排查!
想达到使用流畅这种事,就是要尽量避免在主线程有过多的计算操作,所谓过多你可以简单理解为每次超过16ms的计算。我说一下自己平时的习惯

编码过程原则:
第一:先UI,后数据。比如页面跳转,就要采用这种原则,获取数据的过程UI可以是一个读取状态的展示。
第二:异步计算存储。比如持久化数据,各种压缩算法,都采用异步的方式。
第三:精简View处理。对于列表类型的View,注意layout的计算和draw时的计算。

调试过程原则:
第一:注意内存使用。感觉对流畅度影响比较大是内存抖动。
第二:开发者工具布局边界的使用,尽量减少布局层级
第三:开发者工具GPU过度绘制,控制背景以及重叠区域的过渡绘制
第四:开发者工具GPU呈现模式分析,这里是帧率最好的体现,这里可以结合Monitors和内存CPU的trace文件来分析开销。


感谢知乎作者:郝锡强  和高爷
链接:https://www.zhihu.com/question/47702122

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值