Android Studio初心者です。
Release版のAPK生成時にファイル名を自動で付加したいので書いてみました。
build.grade
...
signingConfigs {
myConfig
}
buildTypes {
release {
runProguard true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-project.txt'
signingConfig signingConfigs.myConfig
}
}
applicationVariants.all { variant ->
if (variant.buildType.name.equals("release")) {
variant.outputs.each { output ->
if (output.outputFile != null && output.outputFile.name.endsWith('.apk')) {
def file = output.outputFile
def d = new java.text.SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date())
def newName = "TwitPane_r${defaultConfig.versionCode}_v${defaultConfig.versionName}_${d}.apk"
output.outputFile = new File(file.parent, newName)
}
}
}
}
...
// load signing settings from gradle.properties
if (project.hasProperty('storeFile')) {
android.signingConfigs.myConfig.storeFile = file(storeFile)
}
if (project.hasProperty('storePassword')) {
android.signingConfigs.myConfig.storePassword = storePassword
}
if (project.hasProperty('keyAlias')) {
android.signingConfigs.myConfig.keyAlias = keyAlias
}
if (project.hasProperty('keyPassword')) {
android.signingConfigs.myConfig.keyPassword = keyPassword
}
gradle.properties
storeFile=example.keystore
storePassword=example
keyAlias=example
keyPassword=example
signingConfig のファイル分離については こちら を参考にしました。
上記で gradle assembleRelease すると TwitPane_r252_v5.8.2_20140703_022651.apk のようなファイルが app/build/outputs に生成されました。