第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

談一談Android應(yīng)用性能優(yōu)化

標(biāo)簽:
Android Android Studio

这是第「27篇」原创分享
朝阳杨少爷(ID:CY_YANG_DA_YE),专注于Android领域的开发者。

Android的性能优化

随着 Android 应用的开发,上线到越来越多的人开始下载,使用APP,对于不同手机,不同用户来说使用的体验可以说是决定这个用户是否还会继续使用这款APP最重要的衡量标准。

比如:

  • 手机使用APP越来越卡
  • 手机莫名的发烫
  • 网络问题,内容加载不出来
  • 手机掉电十分得快

而要提升用户的体验,就不得不说要对 Android 应用的性能进行优化。

当对于性能优化有一个很好的提升,那么就可以很好的改善Android应用的产品体验,同时面对各种各样的竞品来说,使用体验越好,才会吸引越来越“挑剔”的用户。

那么可以通过这篇文章,可以了解到那些地方我们可以优化?性能优化的指标是什么?性能优化的工具有哪些?

值得优化的地方

之前,介绍了性能优化的重要性,那么接下来我们聊一聊那些地方可能造成性能优化,只有知道了那些地方可能引起性能方面的问题,我们才能更加有针对性的进行优化。

  • 冷启动的时间
  • 三方SDK使用不合理的地方
  • 代码当中是否频繁的调用创建新的实例
  • APP是否存在过渡绘制的问题
  • 应用的监听,广播是否关闭
  • Handler、Observer、AsyncTask等非静态内部类导致的内存泄露
  • IO操作完成没有关闭的地方
  • 网络请求不合理导致功耗的问题
  • 后台服务常驻导致功耗的问题

性能优化的流程

说到底, 遇到了问题自然就要想如何解决这些问题。

解决问题的时候,要尽可能用数据说话,要有足够的多的测试来验证这个问题。
很多问题,在性能比较好,配置比较高的手机很难复现出来,所以我们可以选择一些低配置的设备进行测试。
对于性能的改善,也一定要保证Android应用的稳定,不能因为改善一个问题导致其他的问题。

graph TD
 发现问题 --> 定位问题
定位问题  --> 解决问题
解决问题 --> 验证问题

这也是我们在解决BUG常用的一个流程方式。

导致性能优化现象、原因以及工具。

性能 现象 导致原因 检测工具
冷启动速度 黑、白屏,首帧出现慢 布局复杂,主线程阻塞,过度绘制,初始化太多内容 Hiearchy Viewer,StrictMode,TraceView,Hugo
流畅度 应用卡顿 过度绘制,主线程阻塞,手机内存不足,GC异常 StrictMode,TraceView,Hugo
内存 整机慢 内存占用过多,内存泄露 Leakcanary
功耗 发烫,掉电快 硬件持续高负荷工作,频繁的网络访问,频繁的界面刷新,长时间不待机,后台服务持续工作 Android Studio开发者选项

解决方向

冷启动的速度

从Nimbledroid当中统计到APP冷启动的平均耗时基本都在3秒以内,甚至更快的都在2秒以内。
导致冷启动速度较慢的原因

问题布局复杂、过度绘制
解决办法:去掉Window背景、增加一个启动背景、去掉复杂布局例如:merge、ViewStub、space、CoordinatorLayout

问题UI阻塞
解决办法:启用子线程例如:AsyncTack、HandlerThread、IntentService、ThreadPool

流畅度优化

问题布局复杂、过度绘制
解决办法:去掉Window背景、增加一个启动背景、去掉复杂布局例如:merge、ViewStub、space、CoordinatorLayout

问题UI阻塞
解决办法:启用子线程例如:AsyncTack、HandlerThread、IntentService、ThreadPool

问题整机内存
解决办法:内存泄露优化(非静态内部类、静态代码检查、系统SDK泄露)

问题内存占大
解决办法:合理的进行缓存,压缩图片,并把图片放在合理位置

功耗优化

问题频繁的网络请求
解决办法:网络请求合并,改善网络请求策略

问题频繁的界面刷新
解决办法:适当的缓存,触发式的响应刷新

问题长时间不待机
解决办法:合理的使用WakeLock,关闭Service

问题后台持续工作
解决办法:系统进行优化

最后

如果有任何问题,想法欢迎给我留言讨论。
看到后我会第一时间回复。

點(diǎn)擊查看更多內(nèi)容
1人點(diǎn)贊

若覺得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
移動(dòng)開發(fā)工程師
手記
粉絲
35
獲贊與收藏
116

關(guān)注作者,訂閱最新文章

閱讀免費(fèi)教程

感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消