build.gradle(app) を使用して、さまざまなフレーバーの apk を作成しました。ただし、同じ apk の異なるフレーバーをインストールすると、前の apk が上書きされます。同じデバイスで同時に実行する複数の apk を作成したいと考えています。同じデバイスにインストールして同時に実行できる、異なる appicon を持つ別の apk を作成したいと考えています。リンク、チュートリアル、または直接のヘルプをいただければ幸いです。
前もって感謝します。
build.gradle(app) を使用して、さまざまなフレーバーの apk を作成しました。ただし、同じ apk の異なるフレーバーをインストールすると、前の apk が上書きされます。同じデバイスで同時に実行する複数の apk を作成したいと考えています。同じデバイスにインストールして同時に実行できる、異なる appicon を持つ別の apk を作成したいと考えています。リンク、チュートリアル、または直接のヘルプをいただければ幸いです。
前もって感謝します。
フレーバーの PackageName を変更する
サンプル Gradle ファイル
apply plugin: 'com.android.application'
android {
lintOptions {
abortOnError false
}
compileSdkVersion 21
buildToolsVersion "21.1.2"
defaultConfig {
minSdkVersion 14
targetSdkVersion 16
}
buildTypes {
debug {
minifyEnabled false
zipAlignEnabled true
}
release {
minifyEnabled true
zipAlignEnabled true
}
}
productFlavors {
Flavor1 {
applicationId "com.falvor.one" //This is where you change the package name
}
Flavor2 {
applicationId "com.falvor.two"
}
}
}
Android のフレーバー階層
- src/main/java
- src/flavor1
--------------Java
----------------Your java files
--------------res
----------------Drawable
詳細については、このリンクをたどってください
次のように、gradle ファイルに新しい productFlavors を作成する必要があります。
productFlavors {
Flavor1 {
applicationId 'com.project.fl1'
signingConfig signingConfigs.xx
versionCode 1
}
Flavor2 {
applicationId 'com.project.fl2'
signingConfig signingConfigs.xx
versionCode 1
}
Flavor3 {
applicationId 'com.project.fl3'
signingConfig signingConfigs.xx
versionCode 1
}
}
ここで重要なことは、それぞれに一意の applicationId を与えることです。これにより、同じ電話にインストールできます。
この投稿では、必要なものを段階的に達成する方法を正確に説明しています。
最も重要なこと:
製品フレーバー コンテナをアプリのbuild.gradleファイルに追加します
productFlavors {
free {
applicationId "antoniocappiello.com.buildvariantsexample.free"
}
paid {
applicationId "antoniocappiello.com.buildvariantsexample.paid"
}
}
src内に、メインのバリアントとは異なるように見せたいプロダクトフレーバーの正確な名前を持つディレクトリを作成します。そのディレクトリ内に、新しいアプリ ランチャー アイコンを配置するサブフォルダーres/drawableを作成します。