官方文档: 启动画面 | Android 开发者 | Android Developers
用法,在自定义Splash画面的最初的周期函数(如onCreate)里调用下述方法:
private fun extendFlash12Display() {
val content: View = findViewById(R.id.root)
content.viewTreeObserver.addOnPreDrawListener(
object : ViewTreeObserver.OnPreDrawListener {
override fun onPreDraw(): Boolean {
return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
//Android12则挂起,暂停绘自定义Splash画面的第一帧
false
} else {
content.viewTreeObserver.removeOnPreDrawListener(this)
true
}
}
})
}
一直挂起则会不显示自定义的Splash画面,只显示系统特性的Splash画面。