Android - Unable to open content: file:///storage/emulated/0

Habe ich ein widget mit neun-patch-Bild-hintergrund.
Das abbild wurde gespeichert in /sdcard/mydir/bgs.

Wenn ich versuche zu laden, ein Bild mit setImageViewUri Methode, ich habe diesen Fehler:

Unable to open content: file:///storage/emulated/0/sdcard/mydir/bgs

..

dann

...

open failed: EACCES (Permission denied)

Dieser erscheint nur auf der Startseite und nur mit dem Nexus 10 und Nexus 7 (mit den neuesten launcher von 4.4 dieser bug nicht vorhanden). Ich habe auch einige RemoteViews auf meine Bewerbung und alles korrekt funktioniert.

Außerdem habe ich in manifest-entweder READ_EXTERNAL_STORAGE, entweder WRITE_EXTERNAL_STORAGE.

Wie kann ich das Problem lösen?

UPDATE: ich habe untersuchen der Methode setImageViewUri und ich habe festgestellt, dass es ändert den Pfad meiner Datei.

if (value != null) {
            //Resolve any filesystem path before sending remotely
            value = value.getCanonicalUri();
            if (StrictMode.vmFileUriExposureEnabled()) {
                value.checkFileUriExposed("RemoteViews.setUri()");
            }
        }

Dieser Methode erhalten meine Wert (/sdcard/mydir/bgs) und ändert es in (storage/emulated/0/sdcard/mydir/bgs). Aber diese Datei nicht vorhanden ist in das system über adb.

InformationsquelleAutor der Frage CeccoCQ | 2013-12-17

Schreibe einen Kommentar