现象:
增加 implementation 'androidx.activity:activity:1.8.0'后,导致build失败:
提示SDK Java_Home 1.8 而当前需要11。修改settings-Gradle为11仍不起作用。
解决: 删除该行引用。
拓展:
1、compileSdkVersion 与 minSdkVersion 和 targetSdkVersion 的关系:
① minSdkVersion:指定应用支持的最低 Android 系统版本。应用在这个版本及以上的设备上才能运行。
② targetSdkVersion:指定应用的目标 Android 系统版本。这个属性告诉系统应用已经针对这个版本进行了测试和优化。
③ compileSdkVersion:指定编译时使用的 SDK 版本,不会影响应用的运行时行为。
2、为何使用最新的 compileSdkVersion:
① 使用最新的 compileSdkVersion 可以确保你可以使用最新的 API 和功能,并获得最新的编译器优化。
② 即使使用最新的 compileSdkVersion,你仍然可以通过设置合适的 minSdkVersion 来支持较旧版本的 Android 系统。
3、升级 compileSdkVersion 的影响:
① 在升级 compileSdkVersion 时,你可能需要处理一些由于使用较新 SDK 版本而引入的编译错误或警告。
② 升级通常不会影响你的应用在旧版 Android 系统上的运行,但可能会要求你更新某些依赖库以保持兼容性。
通过正确设置 compileSdkVersion,你可以确保你的应用在编译时使用最新的工具和 API,同时通过设置 minSdkVersion 和 targetSdkVersion 来控制应用的兼容性和运行时行为。