
和你一起终身学习,这里是程序员Android
经典好文推荐,通过阅读本文,您将收获以下知识点:
本篇文章主要介绍 Android 开发中 开关机 重启时间 部分知识点,通过阅读本篇文章,您将收获以下内容:
一、zygote,预加载class、resources
二、开机动画进程 bootanimation
三、SystemServer.java 代码逻辑
四、非必要服务请放在system_server进程外启动
五、kernel init 时间过长
六、排查驱动设备初始化是否完成
七、apk dex2oat时间过长
八、尽量少把APP设置为persist
九、定频定核,调高CPU频率,会带来一定的功耗
十、PackageManagerService 扫描apk 优化
十一、关机时间优化
十二、优化第三apk 后台服务
十三、谷歌官方参考资料
开机性能是使用功能和其它因素多方面平衡的结果,片面追求单方面的性能没有太大意义;
有些产品设计开机动画非常酷炫,动画图片过多、高帧率会影响开机速度,这时就需要看是开机速度优先还是体验优先;
具体开机优化方案如下:
一、zygote,预加载class、resources
zygote预加载多了,会影响开机时间,所以需要优化预加载内容。
MTK 平台 开机时间信息保存在 /proc/bootprof下,或mtklog/mobilelog/Aplog下。
1.bootprof 举例
<< /proc/bootprof >>:
----------------------------------------
0 BOOT PROF (unit:msec)
----------------------------------------
1612 : preloader
1915 : lk (Start->Show logo: 981)
----------------------------------------
34.132076 : ON
88.563768 : 1-swapper/0 : initcall: of_init 17.915384ms
131.311461 : 1-swapper/0 : initcall: customize_machine 24.395769ms
164.462461 : 1-swapper/0 : initcall: param_sysfs_init 16.619385ms
228.096692 : 1-swapper/0 : initcall: event_trace_init 30.488846ms
297.817461 : 1-swapper/0 : initcall: populate_rootfs 53.605462ms
353.950769 : 1-swapper/0 : initcall: mt_i2c_init 16.164154ms
2367.197389 : 1-swapper/0 : probe: probe=i2c_device_probe drv=mt6311(c0e57f6c) 1998.596236ms
2367.745697 : 1-swapper/0 : initcall: mt6311_init 1999.229312ms
2385.294389 : 1-swapper/0 : probe: probe=platform_drv_probe drv=musb-hdrc(c0e5876c) 16.914000ms
2385.426543 : 1-swapper/0 : initcall: musb_init 17.640462ms
2503.717235 : 1-swapper/0 : probe: probe=platform_drv_probe drv=mtk-msdc(c0ea070c) 36.834692ms
2540.662159 : 1-swapper/0 : probe: probe=platform_drv_probe drv=mtk-msdc(c0ea070c) 36.847000ms
2542.779389 : 1-swapper/0 : initcall: mt_msdc_init 76.216231ms
2852.160621 : 6-kworker/u8:0 : probe: probe=i2c_device_probe drv=fts_ts(c0e9b9cc) 234.830693ms
2855.127621 : 6-kworker/u8:0 : probe: probe=platform_drv_probe drv=mtk-tpd(c0e78d4c) 238.288846ms
2869.938159 : 1-swapper/0 : initcall: battery_init 253.557308ms
2879.950852 : 1-swapper/0 : Kernel_init_done
... ...
29772.775531 : 727-system_server : AMS:systemRea

最低0.47元/天 解锁文章
2450

被折叠的 条评论
为什么被折叠?



