Ich habe Uri für Image-Datei.
Ich benutze diesen Code für den Dateipfad von Uri:
%Vor%Wenn ich ein Bild aus der Galerie-App (Android 4.4.2, Arm-Emu) auswähle,
%Vor%Wenn ich ein Bild aus der App "Dokumente" auswähle (Android 4.4.2, Arm-Emu),
%Vor%Wie kann ich den richtigen Pfad zur Datei für beide Aktionen zurückgeben?
Mein Code ist: -
%Vor%Behandle Aktivitätsergebnis:
%Vor%Das Laden ausgewählter Dateien in ImageView funktioniert für beide Zustände einwandfrei:
%Vor%Stelle sicher, dass du Erlaubnis in Manifest gibst. 2 Stunden vergeudet, verschiedene Methoden ausprobiert, ohne Berechtigungen zu erteilen: /
%Vor%Ich denke, das sollte funktionieren. Ein verallgemeinerter Code zum Abrufen von URI aus dem Pfad:
%Vor%Also habe ich versucht, im Grunde immer auf dem Stapel zu antworten, aber das war das einzige, was für mich funktionierte. Es ist wichtig, über die URI als ein "Versprechen" nachzudenken, dass ein Bild dort lebt, wo es hinweist. Dies bedeutet nicht, dass es eine Datei an diesem Ort gibt, aber wenn Sie richtig fragen, erhalten Sie ein Bild. attachementPath ist der Pfad zum Bild (kann wie eine normale Datei verwendet werden). Siehe unten:
%Vor%public static int getIDFromUri (Uri uri, String constantId) { Cursor c = ContentMaster.getContentResolver () .abfrage (uri, neuer String [] {constantId}, null, null, null);
%Vor%Tags und Links android android-contentresolver