Сценарий: У меня есть приложение, ориентированное на базу данных, которое хранит изображения во внутреннем каталоге файлов приложения. Эти изображения связаны с исследовательскими заметками.
Моя проблема: Когда я запускаю и тестирую приложение в Android Studio, все изображения открываются без проблем. Когда я установил приложение на свой телефон, все работает, но изображения просто зависают (только курсор) с приложением «Фотографии» или изображением точки объяснения (!) С приложением «Галерея».
При выборе ссылки на изображение в телефон, он предлагает выбрать одно из этих двух приложений (фото или галерея). Эмулятор Android Studio просто открывает изображение и не запрашивает выбор.
Что я сделал: Я просмотрел кодирование и попробовал жестко кодировать тип изображения, использовал MimeTypeMap
и даже удалил обозначение MIME-типа при использовании Intent.setData
или Intent.setDataAndType
, которые все работают без проблем в Android Studio.
И эмулятор Android Studio Pixel, и Samsung A10e есть Android 9. Я не уверен, что еще может быть полезным и полезным. Дайте мне знать, если что-нибудь, и я предоставлю это.
Используемый код
private void openFile(Uri uri, String mime){
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(uri,mime);
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION | Intent.FLAG_ACTIVITY_NEW_TASK);
startActivityForResult(intent, 2);
}