我有问题在Android Studio中为我的风格定义两个不同的清单文件。这是我目前的项目结构:
在自由风格的AndroidManifest.xml看起来像这样:
package="se.example.package">
主风格中的AndroidManifest.xml没有uses-permissions,但包含所有风格之间共享的清单代码的其余部分。
Android风格的AndroidManifest.xml看起来像这样:
package="se.example.package">
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
>同步渐变
但没有成功。我如何解决这个问题?任何帮助是赞赏。
编辑1
我将每个flavors AndroidManifest.xml文件的位置从每个res文件夹更改为免费和pro文件夹。结果:
> Pro flavor按预期显示许可权限。
>自由风味显示来自AndroidManifest.xml的权限
文件,许可证和网络权限(应仅为网络)
这感觉像项目结构的问题。这个怎么办?
编辑2
我把合并报告作为Commonsware提示,这些是关于使用权限的报告
自由:
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