android 冷启动优化

文中描述的冷启动时间为:点击应用图标 到 app主界面展示到用户面前,这个时间段。

在程序初始化阶段,我们一般会使用一个有公司LOGO的过渡界面SplashScreen来弥补这段空白。
SplashScreen作为Launcher界面,除了展示公司LOGO外,Application和Activity的初始化操作都在这里被执行。

概念重温

windowBackground
Activity窗体的背景颜色。该属性可以决定在Activity布局文件展示给用户之前,界面该展示什么元素。
一般我们会使用其他颜色代替Activity默认主题的黑色,达到视觉上加快响应速度目的。

核心思想

使用windowBackground代替布局xml展示公司的logo,过渡界面只负责全局组件初始化的工作。
这样做的好处就是:Application、Activity初始化的过程都可以算进过渡界面停留的时间。

实践

使用windowBackground替代xml里面的背景图


优化

除了有依赖的一些步骤,Application、Activity其余初始化操作我们可以抽出放在子线程Runnable里执行,让初始化提前结束掉。

源码

http://git.oschina.net/yso/ZXUtils

你可能感兴趣的:(android 冷启动优化)