Обратите внимание: Ответ отредактирован после ответа Xavier
Я пытаюсь использовать различные Build Flavors для одного и того же проекта приложения в Android Studio. Тем не менее, мне кажется, что у меня ужасное время настроить его на работу соответствующим образом.
Шаги:
- Создайте новый проект Android Studio под названием "Тест".
-
Откройте build.gradle * и добавьте следующие строки:
productFlavors { flavor1 { packageName 'com.android.studio.test.flavor1' } flavor2 { packageName 'com.android.studio.test.flavor2' } }
- После перезагрузки Android Studio теперь я вижу варианты 4 сборки в разделе "Варианты сборки". Это означало, что мы добились успеха в создании продукта. **
-
Создал новую папку источника для flavor1; однако я не уверен, правильно ли я делаю это. Вот как я это сделал:
- Имейте в виду, что имя моего пакета для этого проекта:
com.foo.test
- Щелкните правой кнопкой мыши по папке
src
, для flavor1, я фактически создал отдельные папки в проводнике, так что структураsrc/flavor1/java/com/foo/test/MainActivity.java
. - Это хорошо работает, поскольку папка "java" находится в синем, что означает, что IDE знает свою активную исходную директорию. Кроме того, пакет был автоматически создан. Несмотря на это, я получаю предупреждение о поиске дублированного класса. Смотрите снимок экрана здесь
- Для flavor2 я попытался создать пакет вручную, но папка "src" для flavor2 кажется не синим цветом, поэтому при щелчке правой кнопкой мыши разные опции, и "Новый пакет" недоступен для меня. Смотрите изображение здесь.
- Обратите внимание, что для flavor1 я также создал каталог "res", который становится синим, но, несмотря на это, не предлагает возможности создать либо файл ресурсов Android, либо каталог ресурсов Andorid, если я захочу для использования разных резорбентов для разных вкусов.
- Имейте в виду, что имя моего пакета для этого проекта:
Я что-то делаю неправильно? Или я чего-то не хватает? Дайте мне знать, если вам нужна дополнительная информация.
* У моего проекта есть два файла build.gradle. Один из них расположен в корне папки проекта (\ GradleTest), этот пуст. Второй, расположенный в корне подпапки \GradleTest, также обозначенный как "GradleTest" (GradleTest-GradleTest), это тот, который уже имел код при открытии; поэтому это тот, который я редактировал.
** Я проверил настройки gradle и, видимо, Использовать автоматический импорт был уже включен. Несмотря на это, внося изменения в файл build.gradle автоматически не обновляет варианты сборки. Примечание. Я также попытался использовать Build - Rebuild Project и/или Build - Make Project, no-go. Мне все еще нужно закрыть проект и повторно открыть, чтобы изменения вступили в силу.