美文网首页
应用启动白屏或者黑屏问题

应用启动白屏或者黑屏问题

作者: 海在路上 | 来源:发表于2017-11-22 11:26 被阅读23次

参考博客:

https://juejin.im/post/58ad90518ac2472a2ad9b684

原因:

应用启动分为冷启动和热启动:

1. 冷启动:需要创建新的进程所需时间较长(从launcher启动);

2. 热启动:进程已经创建时间较短(back键,home键,应用退出,但是没有销毁)。   

当系统冷启动一个APP时,zygote进程会首先创建一个新的进程去运行这个APP,但是进程的创建是需要时间的,在创建完成之前,界面是呈现假死状态的,这就很尴尬了,因为用户会以为没有点到APP而再次点击,这极大的降低用户体验,Android需要及时做出反馈去避免这段迷之尴尬。于是系统根据你的manifest文件设置的主题颜色的不同来展示一个白屏或者黑屏。而这个黑(白)屏正式的称呼应该是Preview Window,即预览窗口

解决方法:

方案一:禁止预览窗口的出现

<item name="android:windowDisablePreview">true</item>

方案二:为预览窗口加一个背景图片

因为预览窗口的背景和第一个启动的Activity的主题背景相同,所以只需要为启动的Activity加一个背景即可

<item name="android:windowBackground"></item>

方案三:

[app冷启动缓慢出现白屏之终极解决方案—IntentService高效异步处理]

异步初始化一些东西

相关文章

网友评论

      本文标题:应用启动白屏或者黑屏问题

      本文链接:https://www.haomeiwen.com/subject/zlledxtx.html