假设我有一个生产版本com.android.xyz,这是生产 然后我正在开发一些东西,我想在我的手机上加载这个版本和生产版本,所以它是并排的。我知道我可以创建一个像com.android.abc这样的新包,然后我会有第二个应用程序,它基本上是com.android.xyz的克隆。
思想?
提前致谢, 里德
答案 0 :(得分:4)
IF 您正在使用带有Gradle的Android Studio,有一种简单的方法可以做到这一点。我仍然在AndroidManifest.xml中保留相同的packageName(至少当前的gradle需要这个重复的定义)
的AndroidManifest.xml
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
android:installLocation="internalOnly"
package="com.android.xyz">
的build.gradle
def devBuildName = "dev"
def testBuildName = "test"
android {
defaultConfig {
versionCode 70
versionName "2.2.3"
minSdkVersion 10
targetSdkVersion 19
packageName "com.android.xyz"
}
buildTypes {
debug {
packageNameSuffix "."+devBuildName
versionNameSuffix "-"+devBuildName.toUpperCase()
}
test.initWith(buildTypes.debug)
test {
packageNameSuffix "."+testBuildName
versionNameSuffix "-"+testBuildName.toUpperCase()
}
}
}
您可以在github查看我的完整开发/发布示例。
答案 1 :(得分:0)
您需要更改包名称。 IMO最简单的方法是编写perl / python脚本来遍历文件并根据构建类型更改包名。或者首先在文件上运行C风格宏预处理器。