У меня возникли проблемы с определением двух разных файлов манифеста для моих вкусов в Android Studio. Это моя текущая структура проекта:
AndroidManifest.xml
в цвете free
выглядит следующим образом:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="se.example.package">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
</manifest>
AndroidManifest.xml
в аромате main
не имеет разрешений-применений, но содержит остальную часть кода манифеста, который разделяется между всеми вкусами.
AndroidManifest.xml
в аромате pro
выглядит следующим образом:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="se.example.package">
<uses-permission android:name="com.android.vending.CHECK_LICENSE" />
</manifest>
build.gradle определяет два варианта, например
productFlavors {
free {
applicationId 'se.example.package.free'
minSdkVersion 14
targetSdkVersion 21
versionCode 1
versionName '1.0'
}
pro {
minSdkVersion 14
applicationId 'se.example.package.pro'
targetSdkVersion 21
versionCode 2
versionName '1.1'
}
}
Результат, который я ожидаю, заключается в том, что разные вкусы определяют разные разрешения-разрешения. Это не тот случай. В результате в обоих вариантах только <uses-permission android:name="com.android.vending.CHECK_LICENSE" />
определяется как AndroidManifest.xml
в профиле pro.
Я пробовал:
- Очистить проект
- Проект перестройки
- Перезапустить Android Studio
- Синхронизация gradle
Но без успеха. Как я могу это исправить? Любая помощь приветствуется.
РЕДАКТИРОВАТЬ 1
Я изменил местоположение каждого файла AndroidManifest.xml
каждого из папок res
в папку free
и pro
. Результат:
- Про вкус показывает лицензионное разрешение, как ожидалось.
- Бесплатный вкус показывает разрешения от
AndroidManifest.xml
файлы, лицензии и сетевые разрешения (должна быть только сеть)
Это похоже на проблему структуры проекта. Что с этим делать?
РЕДАКТИРОВАТЬ 2
Я вывел отчеты о слиянии, поскольку Commonsware намекнул, это отчеты о uses-permissions
Free:
uses-permission#com.android.vending.CHECK_LICENSE
ADDED from qwknoteGIT:licencing-library:unspecified:26:5
android:name
ADDED from qwknoteGIT:licencing-library:unspecified:26:22
Pro:
uses-permission#com.android.vending.CHECK_LICENSE
MERGED from qwknoteGIT:licencing-library:unspecified:26:5