我已经问了类似的问题但找不到我想要的东西。因此再次询问。 我想在同一台设备上同时运行单独的风味apk。
我使用build.gradle(app)来创建不同风格的apk。但是安装不同风格的相同apk会覆盖前一个版本。我想创建不同的apks以同时在同一设备上运行。我想用不同的appicon创建不同的apk,它可以安装在同一设备上并同时运行。任何链接或教程或直接帮助表示赞赏。
我的build.gradle如下
productFlavors {
production {
applicationId
"com.abc.def"
buildConfigField 'String', 'HOST', '"http://example.com/api/"'
}
staging {
applicationId
"staging.com.abc.def"
buildConfigField 'String', 'HOST', '"http://example.com/api/"'
}
backendtesting {
applicationId
"backendtesting.com.abc.def"
buildConfigField 'String', 'HOST', '"http://example.com/api/"'
}
}
答案 0 :(得分:2)
此post逐步说明如何配置目录结构和gradle文件。
主要步骤是:
将产品风味容器添加到应用 build.gradle 文件
productFlavors {
free {
applicationId "antoniocappiello.com.buildvariantsexample.free"
}
paid {
applicationId "antoniocappiello.com.buildvariantsexample.paid"
}
}
在src内部创建一个目录,其中包含您希望与主变体看起来不同的产品风格的确切名称,例如,在步骤1中的配置可以支付或免费使用目录名称。在该目录中创建子文件夹res / drawable,您将在其中放置新应用启动器图标。
答案 1 :(得分:2)
不要在gradle命令和它的参数之间放置换行符。它会分别读取每一行,因为换行符是gradle的命令分隔符。(就像;
对于java的方式而言)
例如,使用:
applicationId "com.abc.def"
而不是
applicationId
"com.abc.def"
答案 2 :(得分:1)
您可以为不同的风格设置不同的applicationId。通过这种方式,不同的风格将被视为不同的应用程序,并且当您将它们安装在同一设备上时,它们不会互相覆盖。
作为一个例子,下面的代码片段将创建两种风格,prod和dev与不同的应用程序包。您可以将它们一起安装在设备上。
N