เพื่อสรุปสำหรับผู้ที่ไม่ทราบวิธีการที่จะนำเข้าแพคเกจในbuild.gradle
(เช่นฉัน) ให้ใช้ต่อไปbuildTypes
,
buildTypes {
release {
signingConfig signingConfigs.release
applicationVariants.all { variant ->
def file = variant.outputFile
def manifestParser = new com.android.builder.core.DefaultManifestParser()
variant.outputFile = new File(file.parent, file.name.replace(".apk", "-" + manifestParser.getVersionName(android.sourceSets.main.manifest.srcFile) + ".apk"))
}
}
}
===== แก้ไข =====
หากคุณตั้งค่าversionCode
และversionName
ในbuild.gradle
ไฟล์ของคุณเช่นนี้:
defaultConfig {
minSdkVersion 15
targetSdkVersion 19
versionCode 1
versionName "1.0.0"
}
คุณควรตั้งค่าดังนี้:
buildTypes {
release {
signingConfig signingConfigs.releaseConfig
applicationVariants.all { variant ->
def file = variant.outputFile
variant.outputFile = new File(file.parent, file.name.replace(".apk", "-" + defaultConfig.versionName + ".apk"))
}
}
}
====== แก้ไขด้วย Android Studio 1.0 ======
หากคุณใช้ Android Studio 1.0 คุณจะได้รับข้อผิดพลาดดังนี้:
Error:(78, 0) Could not find property 'outputFile' on com.android.build.gradle.internal.api.ApplicationVariantImpl_Decorated@67e7625f.
คุณควรเปลี่ยนbuild.Types
ส่วนนี้:
buildTypes {
release {
signingConfig signingConfigs.releaseConfig
applicationVariants.all { variant ->
variant.outputs.each { output ->
output.outputFile = new File(output.outputFile.parent, output.outputFile.name.replace(".apk", "-" + defaultConfig.versionName + ".apk"))
}
}
}
}