android app启动页(闪屏页)白屏快速优化方案实践

3.特别说明

本文就不聊zygote创建进程运行app的那一堆原理来班门弄斧了,只谈一谈解决问题最简单的方法,对原理有兴趣的可以自行翻阅【参考文献】中的相关文档。

4.解决思路

通过给activity指定带有window背景的theme来避免白屏(设置window背景)

优点 缺点
设置window背景 能够快速解决显示白屏问题 可能会引起背景图拉伸问题

5.快速解决方案

创建一个style,清单文件里单独给启动页的theme设置为该style,代码如下:

_@drawable/bg_splash_snow_改为你自己的背景图

启动页activity 的 onCreate 方法回调中,将window的背景图置空,代码如下:

class SplashActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
window.setBackgroundDrawable(null)
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_splash)
}
}

看下

你可能感兴趣的:(Android,经验分享,面试,android)