Sentry Answers>Android>

Storage Permissions in Android 13

Storage Permissions in Android 13

Yusuf I.

The Problem

In Android 13, Google revamped storage permission requests for better control over accessing specific media types. The change was made to give users with privacy concerns more control over what they want to share with any particular app.

Previously, we needed to add these permissions to the AndroidManifest.xml file to access any media type:

Click to Copy
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>

These permissions no longer affect devices running Android 13 and above.

The Solution

If you target API 33 (Android 13) or higher, you must add these permissions to AndroidManifest.xml:

Click to Copy
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES"/> <uses-permission android:name="android.permission.READ_MEDIA_VIDEO"/> <uses-permission android:name="android.permission.READ_MEDIA_AUDIO"/>

Only add the ones that you need and request permissions in the code. For example:

Click to Copy
requestPermissions( arrayOf( Manifest.permission.READ_MEDIA_AUDIO, Manifest.permission.READ_MEDIA_IMAGES, Manifest.permission.READ_MEDIA_VIDEO, ), REQUEST_CODE )

For more information about accessing media files please visit https://developer.android.com/training/data-storage/shared/media#storage-permission.

  • Sentry BlogAndroid Manifest Placeholders
  • Sentry BlogHow to handle Android exceptions and avoid application crashes
  • Sentry BlogHow to Improve Your Android Debugging Process
  • ResourcesSentry vs. Crashlytics: The Mobile Developer's Decision-Making Guide
  • Syntax.fm logo
    Listen to the Syntax Podcast

    Tasty treats for web developers brought to you by Sentry. Get tips and tricks from Wes Bos and Scott Tolinski.

    SEE EPISODES

Considered “not bad” by 4 million developers and more than 100,000 organizations worldwide, Sentry provides code-level observability to many of the world’s best-known companies like Disney, Peloton, Cloudflare, Eventbrite, Slack, Supercell, and Rockstar Games. Each month we process billions of exceptions from the most popular products on the internet.

© 2024 • Sentry is a registered Trademark of Functional Software, Inc.