Articles of android productflavors

Не удалось импортировать поддержку android v4 или v7 в библиотеке, используя productFlavors

Я создаю библиотеку Android с различными продуктами . В библиотеке есть свет и полный аромат. Файл настроен правильно: src/main/java/com/example/… для основных классов src/full/java/com/example/… для полных классов src/light/java/com/example/… для легких классов Android Studio правильно поняла это и добавила (full) полный аромат. ВОПРОС: зависимости, такие как okhttp , работают как ожидалось, но не appcompat-v7 . Все, используя […]

Как использовать несколько res.srcDirs и переопределить некоторые ресурсы с помощью gradle

Я хочу создать разные версии моего приложения на основе разных продуктов , но вам нужна определенная степень гибкости, которую я пока не могу достичь. Это моя структура папок: +src +main +java +res +base +java +res +custom1 +java +res +custom2 +res Общий код находится на главной (услуге), а база ui находится на базовой (активности). Затем пользовательская […]

Как определить и использовать константу в скрипте сборки Gradle (Android)?

Я работаю над приложением Android с Gradle как своей системой сборки. Моя цель – использовать значение (имя пакета) как applicationId : productFlavors { orange { applicationId "com.fruits.android.orange" // … Но также выставлять его через BuildConfig чтобы Java-код имел к нему доступ. Этот доступ должен быть вне вкуса (а именно, бесплатная версия приложения должна знать имя […]

Пользовательская задача Android Gradle для каждого варианта

У меня есть Android-приложение, созданное с помощью Gradle, которое содержит BuildTypes и Product Flavors (варианты). Я могу, например, запустить эту команду для создания конкретного apk: ./gradlew testFlavor1Debug ./gradlew testFlavor2Debug Я должен создать пользовательскую задачу в файле build.gradle для каждого варианта, например: ./gradlew myCustomTaskFlavor1Debug Я создал для этого задачу: android.applicationVariants.all { variant -> task ("myCustomTask${variant.name.capitalize()}") { […]

Файлы вкуса и ресурсов Android

У меня проблема с сборкой android gradle. Короче говоря, я создал 2 аромата: productFlavors{ abcDemoFree{ } abcDemo{ } } У этого эффекта есть свой собственный Activity (Settings.java) и макет (settings_layout.xml) для этого действия. Из основного оба файла были удалены, поэтому Settings.java и settings_layout.xml существуют только в ароматах. abcDemoFree – java – Settings.java – res – […]

Gradle получить текущий вкус для конкретной задачи

Я пытаюсь разобраться с google-services.json и разными вкусами. В документации говорится, что нам нужен файл в корневой папке. У меня есть задача, которая может легко скопировать файл из папки аромата в корневую папку: task CopyToRoot(type: Copy) { def appModuleRootFolder = '.' def srcDir = 'src' def googleServicesJson = 'google-services.json' outputs.upToDateWhen { false } def flavorName […]

Тестовый пакет для разных вкусов в Android Studio

Я экспериментирую с примерами приложений в androidstudio. Я должен написать разные классы тестов для вкусов, так как у меня есть разные файлы классов для вкусов. Но мне интересно, есть ли возможность указать тестовые пакеты для каждого аромата в build.gradle. Вот мой build.gradle для справки. Я использую 0.4.6 версию AndroidStudio. apply plugin: 'android' android { compileSdkVersion […]

Android – Как получить приложение для приложения Flavor

Я создаю приложение с различными вариантами вариантов сборки. Ароматы «Свободный» и «Платный». Я хочу создать некоторую логику для своих классов Java, которые должны запускаться только в том случае, если приложение «Платно». Поэтому мне нужен способ получить «applicationId», установленный во время процесса построения градиента, как показано ниже: gradle.build productFlavors { free { applicationId "com.example.free" resValue "string", […]

Android Studio: комбинация вкуса продукта с более чем двумя вкусовыми размерами (группы вкуса)

Я разрабатываю приложение для Android с помощью Android Studio (v 2.1, плагин gradle v 2.1.0). Мое приложение имеет различные версии, которые содержат много общего кода, поэтому я решил использовать параметры вкуса и вкусы продукта для настройки кода и ресурсов, когда и где он запрашивается. Это работало оштрафовано, пока у меня было только два ароматических размера. […]

Локализация строковых ресурсов, добавленных через build.gradle с использованием функции resValue,

Это продолжение ответа, который помог мне на этом посту Мы можем добавить ресурс строки следующим образом из build.gradle : productFlavors { main{ resValue "string", "app_name", "InTouch Messenger" } googlePlay{ resValue "string", "app_name", "InTouch Messenger: GPE Edition" } } Он работает как шарм и служит для того, чтобы иметь разные имена приложений для каждого аромата. (С […]