Вызов диалога выбора файла и загрузка содержимого в kotlin

Пишу небольшое приложение в Android Studio, как и многие столкнулся с типовой задачей — диалог выбора файла и его загрузка.

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

Используем Activity Result APIs для вызова существующего файл менеджера, и допустим, что в нашем activity (MainActivity) есть какая то кнопка запускающая этот диалог.

Тогда код может выглядеть следующим образом:

В начале вы создаёте и регистрируете т.н. контракт, а при нажатии кнопки вызываете его с нужным intent фильтром.

В обработчике результата я открываю поток на чтение, используя переданный URI. Всё содержимое файла я читаю в переменную content.

Мало букафф? Читайте есчо !

Создание экземпляра класса по его имени

Март 14, 2023 г.

Получение доступа к классу в режиме рантайм добавляет известной гибкости. Одна из типичных задач - создание экземпляра класса по его имени. В котлин это делается вот так: [crayon-6965cb5cde967429105932/] Есть несколько нюансов/рекомендаций. ...

Читать

Как изменить цвет фона приложения

Январь 14, 2025 г.

Когда вы проектируете макет активити в android studio вы можете у корневого контейнера задать цвет фона выбрав соответствующее значение атрибута android:background. Как в примере ниже - черный фон [crayon-6965cb5cdeb84221659689/] Это будет ...

Читать

Захват контекста приложения в android/kotlin

Март 5, 2023 г.

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

Читать

Сохранение файла в Downloads Android

Ноябрь 5, 2022 г.

Задача - создать файл в каталоге Downloads из вашего приложения на платформе Android. Пусть это будет какой то текстовый файл, который наше приложение умеет генерировать. Формат файла - XML. Наша задача решается по-разному для андроидов 10+ ...

Читать
 

Комментарии к «Вызов диалога выбора файла и загрузка содержимого в kotlin»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: