Автоинкремент версии билда в проекте на kotlin

Куча готовых решений в сети, но почему то ничего не работает. Пришлось исследовать этот вопрос. Оказалось, что gradle.kts это тоже kotlin скрипт, который выполняется каждый раз при сборке проекта.

И задача состоит в том, чтобы увеличивать версию сборки каждый раз автоматически. Конфигурация в build.gradle.kts содержит секцию android.defaultConfig, которая изначально выглядит вот так:

На месте многоточий — какие то более конкретные значения.

Хочется, чтобы versionName выглядел, как то так:

А versionCode менялся автоматически.

Раз уж мы разобрались, что это скрипт на kotlin, то никто не мешает нам создать функцию, которая читает версию сборки из файла, увеличивает её на единицу и пишет обратно в этот же файл.

Добавим в конец build.gradle.kts следующую функцию:

Также потребуется импорт библиотеки java.util.Properties, её мы добавим в самое начало файла:

Функция getNextVersion выполняет описанные выше операции с файлом .gradle/my.properties, попутно создавая его, если он не существует. В этом файле создаётся свойство — myBuildNumber, которое хранит актуальную версию билда.

Дополнительно, версия будет выводится в консоль во время сборки.

Остается только исправить строки в defaultConfig секции, чтобы всё заработало.

Если потребуется установить вручную версию сборки, вы можете это сделать в файле .gradle/my.properties.

Написать комментарий

Мало букафф? Читайте есчо !

Читаем данные из интернет

Январь 23, 2025 г.

Для чтения данных из интернет есть множество библиотек и классов, потому не стоит делать так, как это описано ниже в статье. Я буду использовать базовые библиотеки, и будет много кода (kotlin). Задача - есть BASE_URL, надо прочитать текстовые данные. ...

Читать

Notification в Android

Март 1, 2025 г.

Как показать уведомление в android? Мало того, что сообщения имеют довольно сложную структуру, но они еще и зависят от версии API, под которое билдится приложение. Чтобы показывать уведомления, начиная с 33 версии API, вы должны добавить в ...

Читать

 

Комментарии к «Автоинкремент версии билда в проекте на kotlin»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: