I have An app with tow flavors ... only one of them needs some permissions. How can I request these permissions only for this flavor during building apk?
These are the permissions needed:
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.READ_PROFILE" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.INTERNET" />
For the purposes of this answer, I assume that you have two product flavors, chocolate
and vanilla
. The chocolate
one is the one that needs the additional permissions.
Step #1: In src/main/AndroidManifest.xml
, put the <uses-permission>
elements that are in common between all the flavors
Step #2: Create src/chocolate/
, a source set that will hold source that will only be used for chocolate
builds, not vanilla
builds
Step #3: In src/chocolate/AndroidManifest.xml
, inside an otherwise-empty <manifest>
element, put the <uses-permission>
elements that chocolate
needs that vanilla
does not
Now, your chocolate
builds will have all of the permissions, while vanilla
builds will only have those from the main
manifest.