Dateipfad null zurück, immer in android lollipop
dies ist mein code, wenn ich bin immer Bild aus dem internen Speicher (in der Galerie).
In lollipop-Datei Weg zurück immer null.
if (requestCode == PICK_IMAGE) {
if(resultCode == RESULT_OK){
//image successfully picked
//launching upload activity
Uri selectedImage = data.getData();
String[] filePathColumn = { MediaStore.Images.Media.DATA };
Cursor cursor = getContentResolver().query(selectedImage,filePathColumn, null, null, null);
cursor.moveToFirst();
columnindex = cursor.getColumnIndex(MediaStore.Images.Media.DATA);
file_path = cursor.getString(columnindex);
Log.d(getClass().getName(), "file_path"+file_path);
fileUri = Uri.parse("file://" + file_path);
cursor.close();
launchUploadActivity(true, PICK_IMAGE);
}else if (resultCode == RESULT_CANCELED) {
//user cancelled recording
Toast.makeText(getApplicationContext(),"User cancelled image selection", Toast.LENGTH_SHORT).show();
} else {
//failed to record video
Toast.makeText(getApplicationContext(),"Sorry! failed to pick image", Toast.LENGTH_SHORT).show();
}
Du musst angemeldet sein, um einen Kommentar abzugeben.
Danke allen,fand ich die Lösung.
Fügen Sie die Berechtigung, um Ihre manifest -
müssen Sie definieren die Berechtigung " Lesen, vor dem Lesen des Inhalts.
BEARBEITET
Aktualisieren Sie Ihre code -
Also hier, wenn jede Ausnahme in das abrufen von Daten aus cursor-es wirft dann die exception.
path = uri.getpath()
als fallback. es funktionierte für mich auf beide, 5.0 oben und unten. Original-Antwort (hier) [stackoverflow.com/a/25538686/1149398]Lollipop beschlossen, einen anderen Kurs mit, um Dateien aus dem system. (Einige sagen, es ist von KitKat, aber das habe ich noch nicht angetroffen, noch auf KitKat). Der code unten ist, um den Dateipfad auf lollipop
isMediaDocument:
getDataColumn:
Wenn Sie immer noch Probleme haben, diese ist die vollständige Antwort, der überprüft, ob Bilder, audio, video, Dateien, usw.
MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
zuMediaStore.Images.Media.EXTERNAL_CONTENT_URI;
denn mitxx.audio.xxx
ich war immer eine MP3-Datei-Namen, während ich ein photo ausgewählt, auch ich änderteBuild.VERSION.SDK_INT >=
zuBuild.VERSION.SDK_INT >
wie kitkat war in Ordnung mit meiner Bewerbung