xamarin-docs
xamarin-docs copied to clipboard
External storage is off limits in SDK 31 for Android
[Enter feedback here]
Can the instructions be updated to follow the new access policy for SDK 31 on Android? My app is being rejected because of the request for read external permission.
Thanks
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
- ID: bde8b00e-bef2-d10c-268f-2e49e236a89f
- Version Independent ID: dad8b07c-2227-c7ed-6369-d10d9b132e99
- Content: Xamarin.Essentials: File Picker - Xamarin
- Content Source: docs/essentials/file-picker.md
- Product: xamarin
- Technology: xamarin-essentials
- GitHub Login: @jamesmontemagno
- Microsoft Alias: jamont
What is the error you are getting? I thought they only changes "ManageExternalStorage" not "ReadExternalStorage"
https://developer.android.com/about/versions/11/privacy/storage from what I see it is when you want to write to external storage, which we don't do
If I have the READ_EXTERNAL_STORAGE enabled they say that grants WRITE ability by default. So when I submit the app with that right they reject it because it violates storage policy.
From: James Montemagno @.> Reply: MicrosoftDocs/xamarin-docs @.> Date: February 1, 2022 at 11:13:05 AM To: MicrosoftDocs/xamarin-docs @.> Cc: John Norton @.>, Author @.***> Subject: Re: [MicrosoftDocs/xamarin-docs] External storage is off limits in SDK 31 for Android (Issue #3417)
What is the error you are getting? I thought they only changes "ManageExternalStorage" not "ReadExternalStorage"
https://developer.android.com/about/versions/11/privacy/storage from what I see it is when you want to write to external storage, which we don't do
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.
You are receiving this because you authored the thread.
[ { @.": "http://schema.org", @.": "EmailMessage", "potentialAction": { @.": "ViewAction", "target": "https://github.com/MicrosoftDocs/xamarin-docs/issues/3417#issuecomment-1027085669", "url": "https://github.com/MicrosoftDocs/xamarin-docs/issues/3417#issuecomment-1027085669", "name": "View Issue" }, "description": "View this Issue on GitHub", "publisher": { @.": "Organization", "name": "GitHub", "url": "https://github.com" } } ]
Looking at the rejection email they say to use the media API instead of read permission
From: James Montemagno @.@.) Reply: MicrosoftDocs/xamarin-docs @.@.) Date: February 1, 2022 at 11:12:56 AM To: MicrosoftDocs/xamarin-docs @.@.) CC: John Norton @.@.), Author @.@.) Subject: Re: [MicrosoftDocs/xamarin-docs] External storage is off limits in SDK 31 for Android (Issue #3417)
What is the error you are getting? I thought they only changes "ManageExternalStorage" not "ReadExternalStorage"
https://developer.android.com/about/versions/11/privacy/storage from what I see it is when you want to write to external storage, which we don't do
— Reply to this email directly, view it on GitHub(https://github.com/MicrosoftDocs/xamarin-docs/issues/3417#issuecomment-1027085669), or unsubscribe(https://github.com/notifications/unsubscribe-auth/AKBF5PHXLHEQDF6BIDQBNSDUZAIBRANCNFSM5NFBC7EA). Triage notifications on the go with GitHub Mobile for iOS(https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675) or Android(https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub). You are receiving this because you authored the thread.Message ID: @.***>
[ { @.": "http://schema.org", @.": "EmailMessage", "potentialAction": { @.": "ViewAction", "target": "https://github.com/MicrosoftDocs/xamarin-docs/issues/3417#issuecomment-1027085669", "url": "https://github.com/MicrosoftDocs/xamarin-docs/issues/3417#issuecomment-1027085669", "name": "View Issue" }, "description": "View this Issue on GitHub", "publisher": { @.": "Organization", "name": "GitHub", "url": "https://github.com" } } ]
@jamesmontemagno here is the rejection reason they give
@jamesmontemagno here is the other half of the email
So, it looks like something you are using is doing "MANAGE_EXTERNAL_STORAGE". Double check your AndroidManifest and for any assembly exports you may have setup. it could also be another 3rd party library. Essentials doesn't add any permissions and we let the developer add them. We only use "READ_EXTERNAL_STORAGE" which should be just fine. Although it is hard to parse exactly what Google means sometimes as they don't reference "READ_EXTERNAL_STORAGE" anywhere...
Looking at this as well https://stackoverflow.com/questions/68362259/android-manage-external-storage-permission-reject-by-google-playstore-for-social
Linking to -> https://github.com/xamarin/Essentials/issues/1961 not 100% sure what the fix is, probably in essentials, else need the workaround as listed on stackoverflow.
Thanks for the additional information
Had the permission for READ_EXTERNAL_STORAGE manually set in the Manifest. After removing that and resubmitting to the play store it was accepted...
John
On Feb 1, 2022 at 4:43 PM, James Montemagno @.***> wrote:
So, it looks like something you are using is doing "MANAGE_EXTERNAL_STORAGE". Double check your AndroidManifest and for any assembly exports you may have setup. it could also be another 3rd party library. Essentials doesn't add any permissions and we let the developer add them. We only use "READ_EXTERNAL_STORAGE" which should be just fine. Although it is hard to parse exactly what Google means sometimes as they don't reference "READ_EXTERNAL_STORAGE" anywhere...
Looking at this as well https://stackoverflow.com/questions/68362259/android-manage-external-storage-permission-reject-by-google-playstore-for-social
Linking to -> xamarin/Essentials#1961 not 100% sure what the fix is, probably in essentials, else need the workaround as listed on stackoverflow.
Thanks for the additional information
— Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android. You are receiving this because you authored the thread.Message ID: @.***>
[ { @.": "http://schema.org", @.": "EmailMessage", "potentialAction": { @.": "ViewAction", "target": "https://github.com/MicrosoftDocs/xamarin-docs/issues/3417#issuecomment-1027359954", "url": "https://github.com/MicrosoftDocs/xamarin-docs/issues/3417#issuecomment-1027359954", "name": "View Issue" }, "description": "View this Issue on GitHub", "publisher": { @.": "Organization", "name": "GitHub", "url": "https://github.com" } } ]
@jamesmontemagno tried the work around by dropping to SDK 29 but the play store no longer accepts new apps below SDK 30 anymore. Any idea when a move to the new standard for picked could happen?
I am not sure, need to open an issue over on Essentials and have the team look into it. I think you already did that though so the team will triage it.