Android Splashscreen API配置完成后启动页图标不显示问题求助
问题解决方案
- 调整SplashScreen初始化顺序
你当前在MainActivity.kt中installSplashScreen()的调用时机错误,必须放在super.onCreate(savedInstanceState)之前执行,修正后代码如下:class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { androidx.core.splashscreen.SplashScreen.Companion.installSplashScreen() super.onCreate(savedInstanceState) ... } } - 升级SplashScreen依赖版本
你当前使用的1.0.0-alpha01是早期测试版本,存在大量已知兼容性问题,包括图标不显示的bug,请升级到稳定版:dependencies { implementation "androidx.core:core-splashscreen:1.0.1" ... } - 补充全版本主题配置
不要只在values-v31下配置启动页主题,需要在默认values/themes.xml中也增加对应配置,确保全版本系统都能正常适配:<style name="AppTheme" parent="Theme.SplashScreen"> <item name="postSplashScreenTheme">@style/AppThemeCompat</item> <item name="windowSplashScreenBackground">@android:color/black</item> <item name="windowSplashScreenAnimatedIcon">@mipmap/ic_launcher</item> <item name="windowSplashScreenAnimationDuration">200</item> </style> - 检查启动图标适配性
如果你使用的@mipmap/ic_launcher是未适配的传统PNG图标,建议更换为自适应图标或者矢量Drawable资源,安卓12及以上的SplashScreen对图标格式有严格要求,未适配的传统图标可能无法正常渲染。
内容的提问来源于stack exchange,提问作者Philipp Fahlteich
相关产品推荐
相关产品推荐

