android / android/codelab-android-workmanager

Android 8.1.0 "API 27" (Permision denial: android.permission.WRITE_EXTERNAL_STORAGE don't work)

Offen
#307 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Kotlin
Sterne
557
Forks
242
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

I catch an error on API 27:

2022-10-05 13:49:41.061 16988-17081/com.example.background E/MediaStore: Failed to insert image
java.lang.SecurityException: Permission Denial: writing com.android.providers.media.MediaProvider uri content://media/external/images/media from pid=16988, uid=10116 requires android.permission.WRITE_EXTERNAL_STORAGE, or grantUriPermission()
at android.os.Parcel.readException(Parcel.java:2013)
at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:183)
at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:135)
at android.content.ContentProviderProxy.insert(ContentProviderNative.java:476)
at android.content.ContentResolver.insert(ContentResolver.java:1539)
at android.provider.MediaStore$Images$Media.insertImage(MediaStore.java:993)
at com.example.background.workers.SaveImageToFileWorker.doWork(SaveImageToFileWorker.kt:40)
at androidx.work.Worker$1.run(Worker.java:86)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
2022-10-05 13:49:41.061 16988-17081/com.example.background E/SaveImageToFileWorker: Writing to MediaStore failed

This permission is mensioned in manifest (see screenshot)
зображення

How to fix this error on API 27?

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne bei SaveImageToFileWorker.kt Zeile 40, wo der Stacktrace für API 27 zeigt, dass der MediaStore-Schreibvorgang fehlschlägt, und überprüfe die Berechtigungsdeklaration im Manifest. Reproduziere den Fehler unter Android 8.1/API 27; abgeschlossen ist die Aufgabe, wenn der Worker das Bild ohne die gemeldete SecurityException in den MediaStore schreiben kann.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
android, kotlin
Bereich
mobile
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.