build\intermediates\merged_res\release\values-v34\values-v34.xml:3: AAPT: error: resource android:color/system_background_dark not found.
👌 你这个报错其实不是 SystemPropertyUtil
的问题,而是 新建的 common-utils
library module 默认带了 res 资源目录,在编译的时候去合并 framework 里的资源结果报错了。
错误关键信息:
error: resource android:color/system_background_dark not found.
说明 library 的 values-v34.xml
引用了 Android 14 (API 34) 新增的系统颜色资源,而你项目的 compileSdkVersion
太低,所以找不到。
compileSdkVersion
在 common-utils/build.gradle
和 app/build.gradle
里确保:
android {
namespace "com.xxx.commonutils"
compileSdkVersion 34 // 或者你本地 SDK 已经下载的最高版本
defaultConfig {
minSdkVersion 21
targetSdkVersion 34
}
}
然后在 Android Studio → SDK Manager → SDK Platforms 里确认你安装了 Android 14 (API 34)。
这样可以兼容 system_background_dark
这些新资源。
如果你的 common-utils
只是放工具类(像 SystemPropertyUtil
),根本用不到 res/
资源文件,可以直接:
common-utils/src/main/res/
整个目录。
build.gradle
里加:
android { // ... buildFeatures { // 不需要资源 androidResources = false } }
这样这个 module 就是 纯 Java/Kotlin 工具库,不会去编译系统的资源,自然也不会报错。
如果 common-utils
就是放工具类(SystemPropertyUtil
、日志工具、常量类等),
👉 推荐用 方案 2(纯工具库,不需要 res
),更干净,编译也更快。
要不要我帮你写一个 完整的 common-utils/build.gradle 配置(适合只放工具类,不带资源文件的情况)?
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。