Android - Невозможно открыть контент: file: /// storage / emulated / 0

Ve виджет с фоновым изображением из девяти патчей. Изображение было сохранено в / sdcard / mydir / bgs.

Когда я пытаюсь загрузить изображение с помощью метода setImageViewUri, яve эта ошибка:

Unable to open content: file:///storage/emulated/0/sdcard/mydir/bgs

..

затем

...

open failed: EACCES (Permission denied)

Это появляется только на главном экране и только с Nexus 10 и Nexus 7 (в последней версии 4.4 этой ошибки не существует). Я'У меня также есть некоторые RemoteViews в моем приложении, и все работает правильно.

Мы также добавили в манифест либо READ_EXTERNAL_STORAGE, либо WRITE_EXTERNAL_STORAGE.

Как я могу решить?

ОБНОВЛЕНИЕ: ямы проверяем метод setImageViewUri и яЯ обнаружил, что это меняет путь моего файла.

if (value != null) {
            // Resolve any filesystem path before sending remotely
            value = value.getCanonicalUri();
            if (StrictMode.vmFileUriExposureEnabled()) {
                value.checkFileUriExposed("RemoteViews.setUri()");
            }
        }

Этот метод получает мое значение (/ sdcard / mydir / bgs) и меняет его на (storage / emulated / 0 / sdcard / mydir / bgs). Но этот файл не существует в системе через ADB.

Ответы на вопрос(4)

Ваш ответ на вопрос