Добавить номер версии в папку сопоставления proguard

Я могу автоматически переименовывать файлы apk в gradle.build, используя

setProperty("archivesBaseName", "MyAppName-$versionName")

Есть ли аналогичный метод для автоматического добавления имени папки сопоставления proguard к номеру версии?

В настоящее время папка по умолчанию

...\app\build\outputs\mapping\release или debug

Мне интересно, можно ли создать папки сопоставления с чем-то вроде release-1.0.1 или debug-1.0.1.


person Angel Koh    schedule 21.12.2016    source источник
comment
Я узнал, что мы можем программно изменить имя apk по вашему вопросу. Спасибо :)   -  person nishith kumar    schedule 21.12.2016
comment
если вы можете, это будет написано где-то в документации здесь: guardsquare.com/en /proguard/manual/usage#obfuscationoptions   -  person Blundell    schedule 30.12.2016


Ответы (2)


Следование ¹ переименует mapping.txt в mapping-release-1.0.1.txt в той же папке.

В файле модуля build.gradle:

android {
    // lots of gradle code

    // The following portion renames the mapping.txt file.
    applicationVariants.all { variant ->
        if (variant.getBuildType().isMinifyEnabled()) {
            variant.assemble.doLast {
                variant.mappingFile.renameTo(file(
                    "${variant.mappingFile.parent}/mapping-${variant.name}-${variant.versionName}.txt"))
            }
        }
    }
}

Вы также можете использовать variant.versionCode или другие параметры в имени файла.

Надеюсь это поможет.

person ozbek    schedule 30.12.2016

Я думаю, вы можете написать метод, который выполняет переименование, копируя файлы в каталоги на основе текущей версии. что-то похожее на ответ здесь: Как изменить имя файла сопоставления proguard в проекте gradle для Android

person Mina Wissa    schedule 30.12.2016