Как выбрать файл в Android?

Я использую код ниже, чтобы сделать операцию.

Действие намерения = новое намерение (Intent.ACTION_GET_CONTENT);

    action = action.setType("*/*").addCategory(Intent.CATEGORY_OPENABLE);
    startActivityForResult(action, addEditInstance.INTENT_ATTACH_FILE);

Но у меня есть варианты выбора медиа-файлов, где я получаю результат как

/ Внешний / изображений / медиа /92

но я ищу только имена файлов. Есть ли способ получить фактический путь к файлу из этого URI?

1 ответ

Решение

Надеюсь, что этот код поможет. Это для URI контента изображений, я думаю, что другие типы медиа также работают

public String getRealPathFromURI(Uri contentUri) {
        String [] proj = {MediaStore.Images.Media.DATA};
        Cursor cursor = managedQuery( contentUri,
                        proj, null, null, null);
        int columnIndex = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
        cursor.moveToFirst();

        return cursor.getString(columnIndex);
    }