私は別のビルドバリアントの風変わりなアプリケーションを構築しています。フレーバーは「無料」と「有料」です。私は、アプリが "有料"の場合にのみ起動する必要がある私のJavaクラスにいくつかのロジックを作成したい。私はこのような何かを行うことができ、アプリケーションのIDを持っていたらAndroid - フレーバーのApplicationIdを取得する方法
gradle.build
productFlavors {
free {
applicationId "com.example.free"
resValue "string", "app_name", "Free App"
versionName "1.0-free"
}
paid {
applicationId "com.example.paid"
resValue "string", "app_name", "Paid App"
versionName "1.0-paid"
}
:以下のようにそのため私は、Gradleのビルドプロセスの間に設定された「APPLICATIONID」を取得する方法が必要になります。
if(whateverpackageid.equals("paid")) {
// Do something or trigger some premium functionality.
}
私はアプリがコンパイルされた後のGradleビルドプロセス中に「APPLICATIONIDは」最終的には「パッケージ名」になると言って訂正するのですか?もしそうなら、「アプリケーションID」または「パッケージ名」を取得して、Javaファイルにフレーバー依存のロジックを実装できる最善の方法は何ですか?
最適なソリューションを、受け入れられるべきです –