I am submitting an updated version of my app (sdk 23) on the Play Store and is giving this error of the permissions when having to publish the section in the Beta Tester.
I've done the changes with requestPermission
for sdk 23:
if (Utils.isMarshmallow()) {
if (ContextCompat.checkSelfPermission(activity, android.Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED &&
ContextCompat.checkSelfPermission(activity, android.Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(activity, new String[] {android.Manifest.permission.ACCESS_COARSE_LOCATION},
Utils.MY_PERMISSION_ACCESS_COARSE_LOCATION);
}
}
But to contemplate devices with Android sdk < 23 my manifest looks like this:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="com.android.vending.BILLING" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> `
My build.gradle is:
android {
compileSdkVersion 23
buildToolsVersion "23.0.3"
defaultConfig {
applicationId "br.com.app.vertz"
minSdkVersion 14
targetSdkVersion 23
versionCode 36
versionName "2.8"
}
...
Still getting the error message:
It is not possible to downgrade devices that previously used the M permissions (SDK 23 and above) to APKs using the old-style permissions (SDK 22 and lower). This occurs in changing the version 32 (23 SDK) for version 29 (SDK 19).