Это код, который возвращает путь к файлу с учетом URI.Ошибка в получении пути к файлу из URI в Android
public String getPath(Uri uri) {
String[] projection = { MediaStore.Images.Media.DATA };
//String[] projection = { MediaColumns.DATA };
Cursor cursor = getContentResolver().query(uri, projection, null, null, null);
int column_index = cursor.getColumnIndexOrThrow(MediaColumns.DATA);
cursor.moveToFirst();
return cursor.getString(column_index);
}
Это работает для изображений в Галерее, потому что проекция MediaStore.Images. Как получить путь к файлу для всех других каталогов? Файл может быть типом документа и может находиться в любом месте SD-карты. Какую проекцию следует искать в пути к файлу?
Спасибо! Я решил это уже. Это было то, что я сделал, и некоторые другие мелкие хитрости, чтобы заставить его работать :) – shiladitya