Android12启动页集成遇SDK版本冲突问题求助
解决Android SplashScreen API依赖与CompileSdk版本冲突问题
核心问题分析
你误解了SplashScreen API的SDK要求:SplashScreen API(androidx.core:core-splashscreen)最低要求compileSdkVersion 31,但并不限制使用更高版本的compileSdk。你主动将compileSdk从32降到31,反而触发了其他依赖(如appcompat 1.5.0、emoji2 1.2.0)的版本冲突——这些依赖明确要求compileSdk至少为32。
具体修复步骤
- 恢复
compileSdkVersion和targetSdkVersion为32(或更高稳定版本如33),SplashScreen API完全支持这些高版本SDK - 保留
implementation 'androidx.core:core-splashscreen:1.0.0'依赖,无需降级 - 若已手动将appcompat改为1.4.0,建议改回1.5.0(或适配compileSdk 32的最新稳定版),避免额外兼容问题
- 同步并清理项目:执行命令
./gradlew clean和./gradlew assembleDebug,或通过Android Studio的「File > Sync Project with Gradle Files」「Build > Clean Project」操作
备选方案(若需强制使用compileSdk 31)
如果必须保留compileSdk 31,需强制将所有冲突依赖降级到适配版本:
- 在
build.gradle(:app)的dependencies块中明确指定兼容版本:implementation 'androidx.emoji2:emoji2:1.1.0' implementation 'androidx.emoji2:emoji2-views-helper:1.1.0' - 保持
androidx.appcompat:appcompat为1.4.0,因为1.5.0要求compileSdk 32
但更推荐保持compileSdk 32或更高版本,既能正常使用SplashScreen API,又能避免强制降级依赖带来的潜在兼容性风险。
内容的提问来源于stack exchange,提问作者KSK
相关产品推荐
相关产品推荐

