私のアプリの多くのフレーバーをbuild.gradleではなくstrings.xmlファイルでより多く定義することに興味があります。複数の味を考えると、私は単純化されたリリース/デバッグバリアントを希望:既存の文字列定義を使用して 'resValue'を定義する
buildTypes {
release {
signingConfig signingConfigs.release
resValue "string", "app_name", "@string/prod_name"
}
debug {
applicationIdSuffix ".beta"
resValue "string", "app_name", "@string/beta_name"
}
をその後、私のビルドフレーバーカスタム解像度/値/のstrings.xmlファイルのそれぞれで、私はそれぞれ独自の 『PROD_NAME』を定義すると、 "beta_name"
これは現在、gradleコマンドライン経由で細かいビルドを行いますが、Androidスタジオでは認識されません。
のAndroidメーカーエラー:
は、私は1つの文字列を別の参照方法の典型的な 'generated.xml'
<!-- Values from build type: debug -->
<string name="app_name">@string/beta_name</string>
以内にこれを見つけます。私はあなたがresValue
DSLで@string/my_string
を解決することはできません私の経験ではアンドロイドStudioの2.1のプレビュー5
「Androidスタジオで認識されない」とはどういう意味ですか? –
..w.なぜ正しい文字列を正しいリソースディレクトリに入れないのですか?リリース固有の文字列の 'src/release/res/values/strings.xml'、デバッグビルドの' src/debug/res/values/strings.xml'? –