Android手机在启动应用时,闪一下黑屏,有的手机1秒不到,有的2秒或以上?一直没注意其他应用,听同事说微信桌面点击启动时会延迟一会启动,没有黑屏。。试了一下,像QQ、微信、360云盘、酷我音乐等APP都作了处理,也有一些像蜻蜓FM的APP也会闪一下黑屏,应该是有技术来补全这个问题。查了一些资料,对这方面信息却比较少,可能是没找到。。。
闪黑屏的原因主要是因为Android系统启动我们应用时先要加载Application的onCreate和onResume后还在再加载application里带有in<tent-filter>的Activity的onCreate和onResume显示第一个Activity。这里测试过,即使是onCreate和onResume不加载其他仅放一张图片,启动时仍然会闪一下黑屏。所以这个闪黑屏是不可避免的。但是看到QQ和微信等应用时,这个是怎么实现的?
自定义Theme
代码如下:
设置背景图Theme
<style name="Theme.AppStartLoad" parent="android:Theme">
<item name="android:windowBackground">@drawable/ipod_bg</item>
<item name="android:windowNoTitle">true</item>
</style>
//2、设置透明Theme
<style name="Theme.AppStartLoadTranslucent" parent="android:Theme">
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowNoTitle">true</item>
</style>
•Theme.AppStartLoadTranslucent 桌面点击时,感觉是延迟启动应用,其实已经启动,只不过已经透明处理。
建议使用第二种,理由嘛,大流如QQ、微信都采用这种方法。将黑屏透明,看着像是延迟了。