我想使用Gradle創建2個不同的APK(發佈和調試),我想爲它們使用不同的名稱('appName'和'appName debug')。Android Gradle合併字符串資源
我已經找到了一些解決方案,但它並沒有爲我工作:
link 1
link 2
我想在設備上安裝的APK兩種,但我有以下錯誤:
Duplicate resources:
...\src\release\res\values\config.xml:string/config_app_name,
...\src\main\res\values\config.xml:string/config_app_name
如果我從main\res\values\config.xml
刪除config_app_name
密鑰,那麼Gradle說沒有找到該密鑰。
我有3個清單文件:
...\src\main\AndroidManifest.xml (this uses the `android:label="@string/config_app_name"`)
...\src\release\AndroidManifest.xml
...\src\debug\AndroidManifest.xml
buildTypes {
debug {
packageNameSuffix ".debug"
versionNameSuffix "-debug"
buildConfig "public static final String PROVIDER_AUTHORITY = \"" + PROVIDER_DEBUG + "\";"
signingConfig signingConfigs.debug
}
release {
buildConfig "public static final String PROVIDER_AUTHORITY = \"" + PROVIDER_RELEASE + "\";"
signingConfig signingConfigs.release
}
}
sourceSets {
debug {
java.srcDirs = [
'src/main/java']
res.srcDirs = [
'src/main/res',
'src/debug/res']
}
release {
java.srcDirs = [
'src/main/java']
res.srcDirs = [
'src/main/res',
'src/release/res']
}
}
是否有可能在該項目的主要部分使用一個公共密鑰(字符串,整數,夢詩)和發佈/調試部分覆蓋它?
在此先感謝。
我有一個大項目,我需要sourceSets聲明,因爲一些生成類型使用多於2個srcDirs。但是謝謝你的解釋。 – Blehi