Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Tester64
396 / 357 / 46
Регистрация: 22.05.2013
Сообщений: 2,518
#1

Подменить файл в Gradle при разных сборках - Программирование Android

29.07.2016, 06:57. Просмотров 239. Ответов 3
Метки нет (Все метки)

Гуру, подскажите если кто сталкивался...

Такое вообще возможно???


Пытаюсь добиться того, чтобы в разных сборках использовались разные файлы.

Сделал класс version_lite.java, в который положил
Java
1
public static final boolean isLiteVersion = true;
Сделал класс version_pro.java, в который положил
Java
1
public static final boolean isLiteVersion = false;
и разные функции разной начинкой.

Хочу (в идеале) получить 4 варианта сборки из одной папки проекта:
1) дебюг лайт (включен вывод лога в файл и logcat)
2) релиз лайт (урезанный функционал, при декомпиляции других функций просто нет в коде)
3) дебюг про (включен вывод лога в файл и logcat)
4) релиз про (расширенный функционал)

Я понимаю что это можно сделать через GIT, но куда удобнее когда 2 версии файла (лайт/про) лежат рядом в редакторе, но при сборке используется лишь один из них, а при сборке батником другой...

Ресурсы входящие в сборку тоже хотел бы "чистить от не нужных".

Куда "копать"? Про Градле слишком много "вкусного" слышал... На такое вообще он способен?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.07.2016, 06:57
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Подменить файл в Gradle при разных сборках (Программирование Android):

Gradle файл при использовании firebase
Не могу подключить Firebase к своему приложению. Ошибка в gradle. Лог...

Gradle sync failed: Invalid Gradle JDK configuration found
Спустя пару часов все таки решил открыть тему. Intellij IDEA 15.0.2 ...

Ошибка при сборке проекта (gradle)
Вообщем, делаю тренировочное приложение, чтобы научиться работать с БД MySQL....

Ошибка Gradle при добавлении Espresso
Проблема с добавлением библиотеки Espresso как зависимость при помощи Gradle. ...

Как при помощи Gradle добавлять библиотеки в проект?
как при помощи Gradle добавлять библиотеки в проект?? А исходники как в проект...

Android, Gradle: проверка параметра при отладке и сборке подписанного файла
Приветствую, коллеги! Всем хорошего кода. В проекте есть переменная (класса),...

3
androbro
340 / 301 / 67
Регистрация: 17.10.2014
Сообщений: 887
29.07.2016, 09:52 #2
Цитата Сообщение от Tester64 Посмотреть сообщение
Куда "копать"? Про Градле слишком много "вкусного" слышал... На такое вообще он способен?
вот в сторону "вкусного" и копайте - gradle product flavors вам в помощь.

Не по теме:

имхо: "дебюг" и "Градле" лучше уж пишите тогда на английском, а не русским на английский лад:)

0
Tester64
396 / 357 / 46
Регистрация: 22.05.2013
Сообщений: 2,518
29.07.2016, 18:46  [ТС] #3
спасибо! кажется то что нужно(буду вычитывать)

Не по теме:

Цитата Сообщение от androbro Посмотреть сообщение
имхо: "дебюг" и "Градле" лучше уж пишите тогда на английском, а не русским на английский лад
Иногда так лень менять язык! :)

0
Pablito
2653 / 2135 / 726
Регистрация: 12.05.2014
Сообщений: 7,450
Завершенные тесты: 1
29.07.2016, 19:06 #4
flavors надо знать для эрудиции
в градле дописывается тупо блок
Java
1
2
3
4
5
6
7
8
9
    productFlavors {
        def IS_LITE_VERSION = "IS_LITE_VERSION";
        lite {
            buildConfigField "boolean", IS_LITE_VERSION, 'true'
        }
        pro {
            buildConfigField "boolean", IS_LITE_VERSION, 'false'
        }
    }
после синхронизации из кода можно спокойно вычитывать значение переменной
Java
1
Log.i(TAG, "" + BuildConfig.IS_LITE_VERSION);
выбор варианта сборки (а их теперь 4) будет тут
Подменить файл в Gradle при разных сборках
грубо говоря к слову debug или release будет добавляться название flavor-а, в моем примере это lite и pro
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.07.2016, 19:06
Привет! Вот еще темы с решениями:

Ошибка синхронизации Gradle при попытке создания проекта Android в IntelliJ IDEA
Всем доброго времени суток. Собственно проблема с которой столкнулся в...

Ошибка при сборке "This version of Android Studio is incompatible with the Gradle Plugin used"
Сегодня обновил студию, теперь при сборке проекта вылетает с ошибкой: Error...

Как подменить файл CLASSPNP.SYS через Live CD?
Такая тема, включаю комп, винда дальше загрузочного экрана никуда не двигается,...

Подменить все ссылки при переходе
Возникла проблема: дана html страница, на ней, естественно, есть ссылки ( GET и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru