@Sp0tted_0wl

Как создавать различные конфигурации Android-приложения?

Существует Android-приложение, в котором есть класс Configuration.java, содержащий конфигурации для dev и production версий приложения. В зависимости от того, какая версия требуется, настройки меняются и приложения собирается. Появилось желание это дело автоматизировать и в качестве инструмента был выбран Gradle.

Идея следующая: создать 2 копии файла Configuration.java и в зависимости от нужной версии приложения собирать его с одной версией файла или с другой. Видел решение на Ant, но сделать это на Gradle я не смог. Секция buildTypes выглядит так:

buildTypes {
    dev {
        packageNameSuffix ".dev"
    }
    prod {
        packageNameSuffix ".prod"
    }
}


А вот как сюда еще прикрутить подмену файлов Configuration.java, я так и не разобрался.
  • Вопрос задан
  • 2830 просмотров
Решения вопроса 1
@Sp0tted_0wl Автор вопроса
Сам же и отвечаю на свой вопрос.
Небольшой мануал:
1. Организовать структру каталогов следующим образом
src
   main
       java
           com.example.application
               MainActivity.java
       res
       AndroidManifest.xml
   dev
       java
           com.example.application.config
               Configuration.java
   pro
       java
           com.example.application.config
               Configuration.java

2. Добавить в build.gradle следующие строки
productFlavors {
        dev {
            ...
        }

        pro {
            ...
        }

3. Скомандовать ./gradlew assembleDevDebug (или assembleProDebug)

На выходе получается сборка которая использует соответствующий конфиг-файл. Надеюсь кому-то поможет.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы