Ich habe diese Methode:
public String getRealPathFromURI(Uri contentUri) {
String[] proj = { MediaStore.Images.Media.DATA };
Cursor cursor = managedQuery(contentUri, proj, null, null, null);
int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
cursor.moveToFirst();
return cursor.getString(column_index);
}
Leider zeigt mir der Compiler ein Problem bei:
Cursor cursor = managedQuery(contentUri, proj, null, null, null);
Weil managedQuery()
veraltet ist.
Wie könnte ich diese Methode ohne Verwendung umschreiben managedQuery()
?
java
android
deprecated
AndreaF
quelle
quelle
file://
URIs können im Allgemeinen nicht aufgelöst werden mitcontentUri
: Wenn Sie eine Datei-URI haben, haben Sie BEREITS den tatsächlichen Pfad.new File(new URI(uri.getPath()));
.new File(new URI(uri.getPath())).getAbsolutePath();
ist was du brauchst, nein?quelle
Sie müssen den Cursor initialisieren, da er vor dem Start der Methode oder an einem anderen Ort geschlossen wird
quelle