性能优化组合拳

末鹿安然 提交于 2020-05-08 19:08:31

一、卡顿优化

    启动卡顿优化

    现象:启动慢,启动白屏,启动黑屏

    1、不要在oncreate中做耗时操作

    2、不要在application中做耗时操作

    3、布局要浅,避免过度绘制,如果布局实在是复杂,用Constraintlayout

            开发者选项中有调试GPU过度渲染工具。

            颜色:蓝色<浅绿<浅红<深红 

            分别代表:绘制一次<绘制两次<绘制三次<绘制四次及以上

    4、如果加载的实在是多,就分步加载,放到子线程,加载一部分回调一部分刷新主线程数据

    白色主题耗时多久白屏,黑色主题耗时多久黑屏

    运行时卡顿优化

    1、耗时操作不要放在主线程

    2、自定义控件ondraw中不要做耗时操作,1000ms / 60帧 = 16.6666... 如果16ms的时间没来得及绘制就掉帧,表现为卡顿

 

二、内存优化

    传送门:https://blog.csdn.net/zhangzhuo1024/article/details/89599446

 

三、apk体积优化

    1、冗余代码删除。随着项目功能修改,会有很多冗余的废代码,及时删除

    2、冗余资源删除。没有用的图片,布局全部删除;androidstudio  文件夹右键->Refactor->Remove Unused Resource.

    3、图片优化。传送门:https://blog.csdn.net/zhangzhuo1024/article/details/104263941

    4、减少三方框架、三方库的引用。三方框架只使用其中某个功能,尽量引用小库,不要使用全库;多处使用时保证库的统一,不要用多个库实现类似的功能,如图片加载一处使用glide,一处使用picasso

 

四、电量优化/功耗分析

     1、不要常驻后台;

     2、非必须不要设置常亮,使用完后清除常亮标记

     3、谨慎使用wakeLock,wakeLock锁被应用持有,手机就不会进入休眠状态持续耗电。所以前台应用不要申请,后台应用非必选申请时需要设置超时参数,超时自动释放;后台应用运行结束时及时释放。

     4、网络、蓝牙、传感器、定位都是耗电大户,非必须不使用,使用后及时断开;定位要求不高的话不要使用gps,gps定位比移动数据定位耗电多

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!