Android картинка, видео, музыкальный проигрыватель

1. Цель дизайна

Для более глубокого понимания Android-разработки я изначально планировал разработать фотоальбом или мультимедийное приложение, связанное с видео, но случайно увидел на github фреймворк, в котором определялось множество связанных картинок и видео. может получить локальные файлы мобильного телефона, в отличие от предыдущего приложения, которое необходимо импортировать в drawable или получить в Интернете, поэтому я решил использовать github для разработки этого курса.
https://github.com/LuckSiege/PictureSelector

2. Описание функции

  1. Предварительный просмотр и просмотр фотографий, видео и аудио, хранящихся в мобильном телефоне, и вы можете найти различные типы фотографий, видео и аудио, хранящихся в мобильном телефоне, через приложение, включая png, jpg, jpeg и другие форматы.
  2. Однократный или множественный выбор фотографий, аудио и видео, хранящихся локально на мобильном телефоне, и возврат выбранных фотографий, видео и аудио на домашнюю страницу для отображения
  3. Делайте фотографии, видео или аудиозаписи и возвращайте результаты на домашнюю страницу для отображения
  4. Воспроизведение выбранных фото, видео и аудио на главной странице

3. Детальный дизайн

3.1 Бизнес-логика системы

Блок-схема бизнес-логики

вставьте сюда описание изображения

3.2 Конструкция функционального модуля системы

вставьте сюда описание изображения

3.3 Дизайн интерфейса системы

  1. Главная: Отображение выбранных файлов.
  2. На странице параметров операции нажмите на домашнюю страницу, чтобы перейти на страницу выбора операции, где вы можете выбрать, добавлять ли фотографии, видео, аудио или делать снимки.
  3. Страница отображения локальных файлов: отображение локальных файлов (изображений, видео, аудио) мобильного телефона аналогично альбому мобильного телефона, который можно выбрать и просмотреть.
  4. Страница предварительного просмотра файла: щелкните файл, который вы хотите выбрать, и файл будет предварительно просмотрен.

4. Реализация программы

Прежде всего, поскольку я использовал стороннюю среду интеграции, мне сначала нужно использовать gradle для импорта
всех проектов { repositories { jcenter() maven { url 'https://jitpack.io' } } } , а затем создать файл xml в макете.Во-первых, используйте домашнюю страницу RecyclerView используется для облегчения расположения выбранных изображений, а также используйте относительный макет и представление изображений и макет в библиотеке для отображения изображений и видео. В MainActivity используйте getviewbyid, чтобы получить элемент управления пользовательского интерфейса в макете, новый GridImageAdapter для хранения выбранного файла, а затем определите тип сохраненного файла с помощью функции, встроенной в библиотеку, и используйте функцию переключения для использования различных методов. интеграции, чтобы открыть соответствующий соответствующий документ.








вставьте сюда описание изображения

И если вы хотите получить локальные файлы мобильного телефона, вам нужно подать заявку на разрешение на запись
вставьте сюда описание изображения

Затем создайте и щелкните соответствующий прослушиватель для элемента управления пользовательского интерфейса, используйте getid элемента управления, чтобы оценить событие ответа, и используйте функцию в библиотеке, чтобы отобразить локальный фотоальбом мобильного телефона и выполнить соответствующие операции в каждом соответствующем событии.
вставьте сюда описание изображения

5. Запуск результатов

вставьте сюда описание изображениявставьте сюда описание изображения

Выберите альбом:
вставьте сюда описание изображениявставьте сюда описание изображениявставьте сюда описание изображения

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

Вы можете щелкнуть изображение, чтобы просмотреть его, или провести пальцем влево и вправо, чтобы выбрать другой альбом.
вставьте сюда описание изображениявставьте сюда описание изображениявставьте сюда описание изображения

Выбранное изображение вернется на домашнюю страницу для отображения, и вы также можете войти на страницу просмотра на домашней странице.

вставьте сюда описание изображениявставьте сюда описание изображениявставьте сюда описание изображения

Когда звук выбран, все локальные аудио отображаются и могут быть воспроизведены после нажатия
вставьте сюда описание изображениявставьте сюда описание изображения

Выбрав видео, вы также можете воспроизвести его и выбрать переход на домашнюю страницу.Вы
вставьте сюда описание изображениявставьте сюда описание изображениявставьте сюда описание изображения
также можете записывать видео, делать снимки и записывать звук.

6. Резюме

  • В этом эксперименте я использовал библиотеку с открытым исходным кодом в github, которая содержит много знаний, которые я не усвоил в классе, таких как получение разрешений на операции с файлами, импорт библиотек с открытым исходным кодом и процесс реализации различных съемок, таких как видеозапись, фотосъемка и видеозапись.
    Но есть и учёные
  • Были углублены знания, например, как аккуратно расположить картинки в дизайне страницы макета, как научиться использовать RecyclerView; при добавлении событий мониторинга в элементы управления использовать getid и переключатель вида для добавления событий в разные элементы управления; использовать адаптеры для размещения фотографии Различные файлы, такие как видео и видео, и добавить свои собственные события ответа на клик для каждого изображения, видео и т. д. в адаптере, чтобы завершить просмотр выбранных файлов на домашней странице.
  • Так же много чего можно улучшить в этой системе.Например много проблем при импорте библиотеки и ее использовании.Некоторые проблемы решены,а некоторые не решены.Например есть функция кадрирования и вращающиеся картинки в библиотеке с открытым исходным кодом, но при его использовании приложение будет закрыто, а в журнале не будет отображаться сообщение об ошибке.В итоге решения нет, поэтому приходится отказываться от этой функции; имя файла не может отображаться при выборе, и изображение можно просматривать напрямую, но видео и аудио должны отображаться.Откройте воспроизведение, чтобы определить имя файла.

адрес источника

https://github.com/1105358600/AndroidPVASelector

Supongo que te gusta

Origin blog.csdn.net/qq_45808700/article/details/117907219
Recomendado
Clasificación