我是新来的Android Studio和运行设备上的调试版本工作正常,但在应用程序采购测试(显然释放)我需要一个版本生成签署与正常键。我可以使用Build - > Generate signed APK制作APK,但是包名似乎不正确。这是我的构建文件:Android工作室 - 释放APK的味道
apply plugin: 'android'
android {
compileSdkVersion 19
buildToolsVersion "19.0.1"
defaultConfig {
minSdkVersion 8
targetSdkVersion 9
testPackageName "com.company.common.common"
testInstrumentationRunner "android.common.InstrumentationTestRunner"
}
signingConfigs {
releaseConfig {
storeFile file("filname")
storePassword "password"
keyAlias "alias"
keyPassword "password"
}
}
buildTypes {
debug {
packageNameSuffix ".debug"
}
release {
runProguard false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
signingConfig signingConfigs.releaseConfig
}
}
productFlavors {
Flavor1 {
packageName "com.company.test"
}
}
}
dependencies {
// some dependencies
}
请注意包装中的名称被重写。这种味道没有清单;唯一的清单是在main下,并指定一个com.company.common包。如果我使用Android创建com.company.test APK并将其安装到设备上,然后从Android Studio生成APK并进行安装,则最终会在设备上显示两个应用程序,而不是第二个应用程序替换第一个应用程序。这表明软件包名称是不同的,我假设,因为Android Studio正在生成一个包含com.company.common包的APK。不知道如何验证。
当我刚建立项目,我得到一个调试APK,但没有释放APK。如何获得正确包名的发布APK?我刚刚从Android Studio运行了应用程序,它说它正在安装com.company.test.debug,并且它需要在安装前卸载应用程序。所以现在我正在考虑生成签名的APK生成一个与调试包的构建。
到目前为止,这是阻止我转移到Android Studio和Gradle的问题。一旦我过去了,我想我很清楚要把所有的东西都搬走,所以我希望有人能帮我弄明白!
我在命令行上使用“gradle assembleRelease”来确保我正在创建一个发布版本。您还应该能够使用“installFlavor1Release”任务进行测试。 –