java.lang.UnsupportedOperationException: запросы заголовка запроса не поддерживают проекции, выборы или сортировку - PullRequest
0 голосов
/ 28 октября 2019

Я пытаюсь прочитать файлы из внешнего хранилища файлов, но когда я пытаюсь преобразовать filepath из content-uri, я получаю исключение при неподдерживаемой операции по запросу ContentResolver:

java.lang.UnsupportedOperationException:Запросы заголовка запроса не поддерживают проекции, выборки или сортировку

Я никогда не сталкивался с этим исключением прежде, и это работает нормально в моем другом приложении, но я не могу найти то, что мне здесь не хватает.

1 вещей, если кто-то может указать, что fileProviders необходимы для этой операции?

Ниже приведен мой поток кода:

onActivityResult:

 List<Uri> uris = fileUtil.extractUriFromIntent(data);

        if (uris != null && !uris.isEmpty()) {
            String filePath = fileUtil.getPath(getActivity(), uris.get(0));
            prepareAttachment(filePath == null ? "" : filePath);
        }

и следующиестроки для запроса Resolver содержимого:

public  String getDataColumn(Context context, Uri uri, String selection,
                                           String[] selectionArgs) {

            Cursor cursor = null;
            final String column = "_data";
            final String[] projection = {
                    column
            };

            try {
                cursor = context.getContentResolver().query(uri, projection, selection, selectionArgs, null);
                if (cursor != null && cursor.moveToFirst()) {
                    final int column_index = cursor.getColumnIndexOrThrow(column);
                    return cursor.getString(column_index);
                }
            } catch (Exception e) {
                e.printStackTrace();
                return null;
            } finally {
                if (cursor != null) {
                    cursor.close();
                }
            }
            return null;
        }

Я ожидаю получить filePath для файла в содержимом URI, но запрос не отвечает вышеупомянутому исключению.

...