製品のフレーバーに応じて異なるイメージが必要です。デバッグまたはリリースの場合、これを実現するためのresフォルダーの適切なセットアップは何ですか?
私のbuild.gradleでは:
productFlavors {
flavor1 {
applicationId "com.myapp.flavor1"
}
flavor2 {
applicationId "com.myapp.flavor2"
}
}
buildTypes {
debug {
applicationIdSuffix '.debug'
useProguard false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
release {
minifyEnabled true
shrinkResources true
useProguard true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
私のフォルダ構造には、次のものがあります。
src/flavor1/res
/flavor2/res
/main/res
/debug/res
デバッグフォルダーに、リソースを持つサブフォルダーとしてflavor1とflavor2を入れてみましたが、それは当てはまりません。デバッグにresフォルダーがあるだけで、両方のフレーバーのアセットが同じになりますが、私はそれらを異なるものにしたいのです。では、デバッグ/リリースとさまざまな製品フレーバーに応じて異なるイメージを持つようにプロジェクトを設定するにはどうすればよいですか?
編集:
更新されたフォルダ構造
これは実際にはあなたが思っているよりも簡単です。
あなたは現在持っています:
src/flavor1/res
/flavor2/res
/main/res
/debug/res
追加するだけです:
src/flavor1Debug/res
/flavor1Release/res
/flavor2Debug/res
/flavor2Release/res
そこにあるリソースは、特定性の低いフォルダーにあるリソースを上書きします。
Android Studioの「ビルドバリアント」UIは、最終的な可能性のセットを確認するのに役立ちます。
私はこのパターンをGoogleMaps APIキーに自分で使用しています。私の場合、これは顧客ごとに異なる必要があり(フレーバー)、アプリの署名が異なるため、リリースとデバッグではすでに異なります。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加