APP启动时白屏时间过长问题的优化


一、App启动分类

1、冷启动
App在后台被清除或者第一次启动时,此启动方式,从点击应用图标到显示界面会经历以下过程:
这里写图片描述
2、暖启动
3、热启动
这两种启动一般不会出现较长的白屏时间,这里不做考虑,也可以参考冷启动优化方式。

二、白屏时间主要影响因素

1、设备性能
2、App的进程个数
3、白屏的Total Time : Application的onCreate()执行时间 + Activity的onCreate()执行时间

对于一个大型的App来说,通常会把相关的第三方SDK的初始化置于Application的onCreate()方法中。

三、解决办法

1、由于白屏总时间等于Application的onCreate()执行时间 + Activity的onCreate()执行时间,所以不要在这两处方法中进行耗时操作,可以将其推后执行或放在子线程中执行。

2、对于多进程的应用来说,每新建一个进程就会初始化Application一次,即会执行Application的onCreate()方法多次,所以将只需要在主进程中初始化的方法推后至Activity的onCreate()中执行。对于只在特定进程中需要初始化的部分方法,可以在Application的onCreate()方法中依据进程名去判断是否需要执行初始化。

3、如果在初始化过程中需要读取自定义Prop配置文件或者SharedPref缓存,若配置较

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值