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.