Комментарии 7
Спасибо, ничего нового не узнал.
+1
именуем релизный апк:
applicationVariants.all { variant ->
variant.outputs.each { output ->
if (variant.buildType.name == "release") {
def vCode = variant.versionCode
if (vCode < 10)
vCode = "0" + vCode
def date = new Date()
def formattedDate = date.format('yyyyMMddHHmm')
output.outputFile = new File(
output.outputFile.parent,
variant.productFlavors[0].name + "_c${vCode}_" + formattedDate + ".apk")
}
}
}
+1
Статья неплохая. Но мне кажется мало кто будет искать справку по gradle на хабре. Более перспективным для этого документация на stackoverflow. Вам не кажется?
P.S. у меня там больше рейтинг, я бы вам обязательно плюс поставил)
0
allprojects {
it.extensions.add("buildSystemDir", "$rootProject.projectDir/buildSystem/")
}
it.extentsions.add? То ли я ничего не понимаю то ли это делается куда проще — project.ext, как советуют в документации
ext {
buildSystemDir = "$rootProject.projectDir/buildSystem/"
}
task getMyProp << { logger.quiet "i am prop buildSystemDir: $buildSystemDir" }
И это распространяется на подпроекты тоже…
Откуда вы взяли такую страшненькую конструкцию?
0
Применяю следующий способ подписи APK файлов
Создаем в папочку
project/app/scripts
Туда кладем дополнительные gradle-скрипты и, в частности, скрипт для подписи приложения:
release.gradle
Далее, подключаем скрипты из папочки scripts в build.gradle для приложения (/app/build.gradle)
Для безопасности добавляем соотв. скрипт и jks файл в git исключения:
Создаем в папочку
project/app/scripts
Туда кладем дополнительные gradle-скрипты и, в частности, скрипт для подписи приложения:
release.gradle
android {
signingConfigs {
release {
storeFile file("my_keystore.jks")
storePassword "some_pass"
keyAlias "alias_name"
keyPassword "another_pass"
}
}
buildTypes {
release {
signingConfig signingConfigs.release
}
}
}
Далее, подключаем скрипты из папочки scripts в build.gradle для приложения (/app/build.gradle)
fileTree('scripts').each { apply from: "${it}" }
Для безопасности добавляем соотв. скрипт и jks файл в git исключения:
# release sign info
*.jks
app/scripts/release.gradle
+1
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Несколько Gradle фишек для вашего Android приложения