以下构建脚本会生成三个APK,但似乎不包含应用程序的名称。
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
applicationVariants.all { variant ->
appendVersionNameVersionCode(variant, defaultConfig)
}
}
}
def appendVersionNameVersionCode(variant, defaultConfig) {
variant.outputs.each { output ->
if (output.zipAlign) {
def file = output.outputFile
def fileName = file.name.replace(".apk", "-" + defaultConfig.versionName + "-" + defaultConfig.versionCode + ".apk")
output.outputFile = new File(file.parent, fileName)
}
def file = output.packageApplication.outputFile
def fileName = file.name.replace(".apk", "-" + defaultConfig.versionName + "-" + defaultConfig.versionCode + ".apk")
output.packageApplication.outputFile = new File(file.parent, fileName)
}
}
这会产生:
app-development-release-null-1.apk
app-live-release-null-1.apk
如何删除" null"并取代" app"用我的应用程序的实际名称?
更新
我通过在gradle文件的顶部添加一个versionName来修复null。出于某种原因,它不见了,但仍然无法修复" app"字符串并将其替换为我的应用程序名称。
答案 0 :(得分:0)
settings.gradle:
rootProject.name = 'appName'
答案 1 :(得分:0)
这是我的方法,这应该给你一些提示。
我在root build.gradle
中添加了应用名称:
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.1.2'
// other class path.
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
mavenCentral()
}
ext {
androidApplicationId = 'com.sample.myproject'
androidVersionCode = 1
androidVersionName = "1.0"
androidAppName= 'myproject'
}
}
然后在应用project build gradle
中添加def baseName
:
android {
compileSdkVersion 23
buildToolsVersion "23.0.3"
defaultConfig {
minSdkVersion 15
targetSdkVersion 23
applicationId globalConfiguration.getAt("androidApplicationId")
versionCode globalConfiguration.getAt("androidVersionCode")
versionName globalConfiguration.getAt("androidVersionName")
def baseName = globalConfiguration.getAt("androidAppName")
project.ext.set("archivesBaseName", baseName + "-" + defaultConfig.versionName);
}
...
您将获得生成的apk,其应用名称如下:
myproject-1.0-debug.apk