在android中为单独的风格创建单独的apk

时间:2015-10-14 13:05:52

标签: android build apk android-productflavors buildconfiguration

我使用build.gradle(app)来创建不同风格的apk。 但是安装不同风格的相同apk会覆盖前一个版本。 我想创建不同的apks以同时在同一设备上运行。 我想用不同的appicon创建不同的apk,它可以安装在同一设备上并同时运行。 任何链接或教程或直接帮助表示赞赏。

提前致谢。

3 个答案:

答案 0 :(得分:3)

更改风味的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中的Flavor Hierarchy

- src/main/java
- src/flavor1
--------------Java
----------------Your java files
--------------res
----------------Drawable
  • 的src / flavor2 / JAVA

要获得更多理解,请按照此link

进行操作

答案 1 :(得分:3)

您需要在gradle文件中创建新的productFlavor,如下所示;

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,然后将它们安装在同一部手机上。

答案 2 :(得分:2)

post解释了如何逐步实现您想要的目标。

最重要的是:

  1. 将产品风味容器添加到应用 build.gradle 文件

    productFlavors { free { applicationId "antoniocappiello.com.buildvariantsexample.free" } paid { applicationId "antoniocappiello.com.buildvariantsexample.paid" } }

  2. src 内创建一个目录,其中包含您希望与主变体看起来不同的产品风格的确切名称,例如,在步骤1中配置目录名称可能是付费免费。在该目录中创建子文件夹 res / drawable ,您将在其中放置新的应用启动器图标。

  3. Directory structure example