私のアプリには便宜のためにflavora
とflavorb
という2つの味があります。製品のフレーバとソース階層
productFlavors {
flavora {
resValue "string", 'app_name', "App Name Flavor A"
applicationIdSuffix ".flavora"
}
flavorb {
resValue "string", 'app_name', "App Name Flavor B"
applicationIdSuffix ".flavorb"
}
}
私はflavora
とflavorb
は、レイアウトファイルflavor_dependent_layout.xml
とJavaクラスFlavorDependentJavaClass
のために異なる実装を使用したい場合を除き、両方の味は、すべて同じレイアウトなどすべて同じJavaコード、すべて同じリソースを、使用したいです。
が、これはそれを行うための正しい方法です:
sourceSets {
main {
res.srcDirs = ['src/main/res']
java.srcDirs = ['src/main/java']
}
flavora {
res.srcDirs = ['src/flavora/res', 'src/main/res']
java.srcDirs = ['src/flavora/java', 'src/main/java']
}
flavorb {
res.srcDirs = ['src/flavorb/res', 'src/main/res']
java.srcDirs = ['src/flavorb/java', 'src/main/java']
}
}
そして当然そこから私は、対応するファイルを配置するために必要なフォルダを作成したい、それがすべてうまくいきますか?メソッドを実行しようとすると、1つのフレーバにしか存在しない場合に備えて、両方のフレーバのクラスを含めたことをどうやって知っていますか?
は(?私も `/ srcに/メイン/資産持っているのでまた、私は明示的に資産フォルダを言及する必要があります)