我有一个带有自定义文件夹的自定义资源构建版本。
而不是 从主应用程序覆盖资源-通过创建具有相同名称的自定义资源, ..我希望拥有仅存在于 custom文件夹
中的自定义图像名称我对解决方案的尝试基于这些线程中的答案,这些线程讨论了如何设置自定义资源集:
以下是我在尝试访问该自定义资源时遇到的错误,以及build.gradle和清单代码。 我想念什么?
模块目录结构:
注意:
/main
具有 ic_launcher.png /variantBeta_
具有 ic_launcher_beta_logo.png 遇到此错误:
Android资源链接失败 找不到/Users/git/sandbox/build/intermediates/merged_manifests/variantBeta_Debug/AndroidManifest.xml:42:错误:资源mipmap / ic_launcher_beta_logo.png(aka com.demo.sandbox.betaVariant:mipmap / ic_launcher_beta_logo.png)。 错误:处理清单失败。
build.gradle:
flavorDimensions "icecream"
productFlavors {
// underscore is added at end so that bulid variant name has spacing for _Debug, _Release
variantAlpha_ {
dimension "icecream"
applicationId "com.demo.sandbox.alphaVariant"
manifestPlaceholders = [
appName : "A-Variant App",
appIcon: "@mipmap/ic_launcher",
]
versionCode 1
versionName "1.0"
}
variantBeta_ {
dimension "icecream"
applicationId "com.demo.sandbox.betaVariant"
manifestPlaceholders = [
appName : "B-Variant App",
appIcon: "@mipmap/ic_launcher_beta_logo.png",
]
versionCode 1
versionName "1.0"
}
}
sourceSets {
variantAlpha_ {
res.srcDirs = ['src/res']
}
variantBeta_ {
// Other variations attempted
// res.srcDirs = ['src/variantBeta_/res']
// res.srcDirs += ['src/variantBeta_/res']
res.srcDirs += ['variantBeta_/res']
}
}
AndroidManifest.xml:
<application
tools:replace="android:label"
android:allowBackup="true"
android:label="${appName}"
android:icon="${appIcon}"
android:supportsRtl="true"
android:theme="@style/AppTheme">
// ..
</application>