安卓14适配编译问题和坑总结

修改对应sdk版本

将targetSdkVersion改为34,minSdkVersion大于23,compileSdkVersion改为34
需注意以下几点

  • Gradle版本最低需要升级至7.4.2,否则会报错Caused by: java.io.IOException: AAPT2 process unexpectedly exit. Error output:
    aapt2 W 06-26 09:56:23 8280 8280 LoadedArsc.cpp:682] Unknown chunk type ‘200’.

  • 建议将Gradle版本升级至8.0.1以上,否则项目中xml文件需要全部整改,可以参考https://code-examples.net/zh-TW/q/2e3f77 不然会报错Task :app:shrinkReleaseRes FAILED
    Execution failed for task ‘:app:shrinkReleaseRes’.
    A failure occurred while executing com.android.build.gradle.internal.transforms.ShrinkProtoResourcesAction
    ParseError at [row,col]:[1,1]
    Message: Content is not allowed in prolog.

  • 如果Gradle升级到8.0以上,jdk需要升级至17以上,建议使用Tools-AGP Upgrade Assistant自动升级,会自动对项目下需要变更的文件进行升级否则需要手动添加很多配置,升级时需要注意将所有Maven仓的Http改为Https,不允许使用Http拉库了

  • 如果使用了R8混淆,Java17默认会开启R8 fullMode混淆模式,在网络请求序列化数据结构时会出现崩溃,可以关闭fullMode混淆,在gradle.properties中配置
    android.enableR8.fullMode = false

以上为适配安卓14时遇到的编译问题和坑

具体适配方式都是参考官方文档

猜你喜欢

转载自blog.csdn.net/CruxFinn/article/details/131638123
今日推荐