Android Studio app安装后首次启动白屏很久的bug之坑

起源:

最近发现一个项目安装包只有5M,但是每次安装后都会冷白屏5-10秒,我很郁闷,到底什么什么鬼导致的呢?

先介绍下版本:

android studio 2.12,gradele 2.1.2
dependencies {
    classpath 'com.android.tools.build:gradle:2.1.2'
}

难道是启动页加载问题?

立马检查启动页,去掉所有页面处理逻辑,首次启动白屏很久。

application耗时?

去掉所有application逻辑代码,再次启动,我的天,居然还是很慢,4-5s。

总结:

看来白屏是在application创建之前,鉴于只是第一次打开白屏,可以猜想它是由一个解压操作造成的耗时,而且是程序启动之前,那是什么原因呢?

先不说了,赶紧先给个主题背景,省的看着心烦

<style name="Theme.UMDefault" parent="@android:style/Theme.Light.NoTitleBar" >
    <item name="android:windowBackground">@drawable/logo</item>
    <item name="android:fitsSystemWindows">true</item>
</style>

下面开始查看android studio日志

这里写图片描述

app在白屏期间这几个/files/instant-run/dex/slice-slice_1-classes.dex一直卡在这里,缓慢一个个进行。从文件名上看,可以猜测到Instant Run热更新将一个完整app拆成N个小的dex文件,更新的时候只需替换对应dex文件即可,但是这个操作为什么那么慢呢,查询后才发现是个bug。

找到问题就好办了:

先果断去掉instant run功能,用gradle2.0.0试试

这里写图片描述

看来我想多了,提示要升级,好吧。

其他办法:

随后,我试了多种办法,暂时没发现解决之道,还好正式版没这个bug。

庆幸:

很庆幸,这个bug只是在调试过程中debug版本里有,打了一个release包,签名后没有这个bug,省去了很多麻烦。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值