Articles of android productflavors

Тестовый пакет для разных вкусов в 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" } } Он работает как шарм и служит для того, чтобы иметь разные имена приложений для каждого аромата. (С […]

Как получить доступ к buildConfigField в другом месте внутри файла сборки градиента

Я пытаюсь установить buildConfigField в моем блоке productFlavor, а затем ссылаюсь на это поле в другом месте в файле сборки gradle, чтобы использовать это значение при создании имени для apk. например productFlavors{ flavor1{ buildConfigField "String", "APP_FLAVOR_NAME", '"MyApp-Flavor1"' } flavor2{ buildConfigField "String", "APP_FLAVOR_NAME", '"MyApp-Flavor2"' } Как я могу получить доступ к APP_FLAVOR_NAME в другом месте моего […]

Несколько файлов dex определяют <мой пакет> / BuildConfig, не могут найти причину:

Я использую новую систему построения градиента, и я столкнулся со следующей проблемой: UNEXPECTED TOP-LEVEL EXCEPTION: com.android.dex.DexException: Multiple dex files define Lcom/kibo/mobi/BuildConfig; at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:594) at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:552) at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:533) at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:170) at com.android.dx.merge.DexMerger.merge(DexMerger.java:188) at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:439) at com.android.dx.command.dexer.Main.runMonoDex(Main.java:287) at com.android.dx.command.dexer.Main.run(Main.java:230) at com.android.dx.command.dexer.Main.main(Main.java:199) at com.android.dx.command.Main.main(Main.java:103) Привинируя зависимости, я ничего не вижу, вот они: firstDebugCompile – ## Internal use, do […]

Android GCM с продуктами

У меня есть GCM проект андроида градиента. Его работа хорошо, когда я добавляю 2 аромата, push-уведомление перестало работать. Мой манифест компиляции (он взят из файла app\build\intermediates\manifests\ex\debug ) ниже: <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.flavor.app" <uses-permission android:name="com.flavor.app.permission.C2D_MESSAGE" /> <permission android:name="com.flavor.app.permission.C2D_MESSAGE" android:protectionLevel="signature" /> <receiver android:name="com.google.android.gcm.GCMBroadcastReceiver" android:permission="com.google.android.c2dm.permission.SEND" > <intent-filter> <action android:name="com.google.android.c2dm.intent.RECEIVE" /> <action android:name="com.google.android.c2dm.intent.REGISTRATION" /> <category android:name="com.flavor.app" /> </intent-filter> </receiver> <service […]

Android-Studio (или IDEA в целом) рефакторирует несколько наборов источников

Каков хороший способ справиться с проблемой рефакторинга над несколькими наборами источников? Например, в разных вариантах – или теперь модульные тесты и интеграционные тесты. У вас может быть только один активный источник, который рассматривается для переименования, поэтому другой источник может оказаться сломанным. Каковы ваши стратегии для решения этой проблемы? Возможно, есть плагин помощи, который мне не […]

Зависимости от компиляции с несколькими вкусами в градиенте

Есть ли способ скомпилировать зависимости несколькими способами в Android Studio (build.gradle)? У меня 2 группы вкуса, и в каждом 2 вариантах. Из 4 возможных комбинаций я хотел бы быть в состоянии зависеть от lib, только если я буду как последним, так и свободным. LastCompile или freeCompile, но lastFreeCompile этого не делает. Это важная часть моего […]

File: /// android_res / drawable не работает при использовании аромата с другим именем пакета

Моя проблема в том, что после того, как я добавил ароматы в свой проект, у аромата с именем пакета, отличным от фактического источника, кажется, есть проблемы с доступом к файлам в android_res/drawable . Более конкретно, у меня есть html-view, который вызывает следующее изображение. <img src="file:///android_res/drawable/image.png"> Изображение появляется в производственном вкусе, у которого есть имя пакета, […]

Intereting Posts
Что совершить в VCS из проекта Gradle в Android Studio Экранная стилизация при активной виртуальной клавиатуре HttpsURLConnection: возобновление SSL не работает Android Studio – установка JVM не найдена Обновление Android SDK приводит к сбою java.lang.VerifyError Текстовое наложение на изображение в андроиде Принудительное приложение для перезапуска с первого действия (когда разрешение отклонено) API Карт Google v2 SupportMapFragment внутри ScrollView – пользователи не могут прокручивать карту по вертикали Публичной или частной, действительно ли это имеет значение с Android-переменными Gradle: Ошибка: более одной библиотеки с именем пакета 'com.google.android.gms' Flash-видео не отображается в WebView для Android 3.0.1 Ionic не может запускать ионную платформу android Как выровнять текст по вертикали? Как удалить уведомление после того, как действие было нажато GSON игнорирует элементы с неправильным типом