Я собираюсь предположить, что под «виджетом» вы действительно подразумеваете «виджет приложения». Если мое предположение неверно, пожалуйста, игнорируйте этот ответ. : -)
На главном экране должна быть возможность прочитать изображение. Главный экран работает в своем собственном процессе и не имеет прав ни на один из ваших файлов.
Разве не разрешено чтение из папки пакета через виджет?
На домашнем экране запрещено читать из файлов вашего приложения. Так что, если вы используете setImageViewUri()
с file://
Uri
, это будет вашей проблемой.
Нужно ли создавать образ на SD-карте, чтобы можно было его прочитать, или есть другой способ?
Внешнее хранилище будет одним из решений. Другой способ - создать файл, используя openFileOutput()
, используя MODE_WORLD_READABLE
. Еще одним будет создание крошечного ContentProvider
и использование content://
Uri
.