Android 12+动画启动屏API失效问题求助
Android新版动画启动屏不显示问题排查与解决
以下是针对你遇到的动画启动屏未展示问题的排查方向和解决方法:
检查Splash Screen依赖是否引入
确保Module级别的build.gradle中添加了AndroidX Splash Screen的官方依赖:dependencies { implementation 'androidx.core:core-splashscreen:1.0.1' // 可替换为最新版本 }验证AnimatedVectorDrawable文件有效性
检查@drawable/news_avd_v02是否为合法的动画矢量图:- 确认文件位于
res/drawable目录下,XML结构正确(包含<animated-vector>标签) - 直接在Android Studio的布局预览中查看该Drawable,确认动画能正常播放,排除文件损坏或语法错误
- 确认文件位于
测试启动屏是否因初始化过快被跳过
若MainActivity初始化速度极快,启动屏可能一闪而过导致你误以为未显示。可临时添加保持条件验证:override fun onCreate(savedInstanceState: Bundle?) { val splashScreen = installSplashScreen() // 临时设置让启动屏持续显示,验证是否能正常出现 splashScreen.setKeepOnScreenCondition { true } super.onCreate(savedInstanceState) binding = ActivityMainBinding.inflate(layoutInflater) // ...后续初始化代码 }若启动屏正常显示,说明是初始化速度问题,后续可根据业务逻辑设置合理的保持条件(如等待数据加载完成)
核对主题配置细节
- 确认
postSplashScreenTheme对应的@style/Theme.xxx.NoActionBar主题存在且配置无错误,该主题缺失会导致启动屏跳转失败 - 确保
compileSdkVersion至少为31(Android 12),兼容库虽支持更低版本,但目标SDK过低可能影响动画展示
- 确认
彻底清理并重建项目
除杀死应用外,尝试以下操作:- 执行
Build -> Clean Project后再Rebuild Project - 清除应用存储数据(设置→应用→你的应用→存储→清除数据)
- 卸载应用后重新安装
- 执行
内容的提问来源于stack exchange,提问作者TRX
相关产品推荐
相关产品推荐

