Создание приложения на Flutter с интеграцией OverlayPortal и Back4app
В этом учебном пособии мы научимся использовать OverlayPortal в Flutter для создания динамических наложений для виджетов, таких как подсказки или меню. Кроме того, мы интегрируем Back4app для хранения и управления данными пользователей, такими как предпочтения или действия, предпринятые при взаимодействии с наложением.
К концу этого учебного пособия вы сможете:
- Реализовать OverlayPortal в приложении Flutter.
- Отображать интерактивные наложения, такие как плавающие меню или подсказки.
- Интегрировать Back4app в качестве бэкенда для хранения данных, связанных с наложением (например, предпочтений пользователей или действий).
- Базовые знания о виджетах Flutter: Знакомство с общими виджетами Flutter, такими как кнопки, контейнеры и наложения.
- Создайте Parse Class с именем OverlayActions с следующими полями:
- имя пользователя (String): Имя пользователя.
- тип действия (String): Действие, выполненное на наложении (например, "Открыто", "Закрыто", "Нажато").
- временная метка (DateTime): Время, когда произошло действие.
На панели управления Back4app перейдите в настройки вашего проекта и получите свой ID приложения и Ключ клиента. Эти учетные данные будут использоваться для инициализации Back4app в вашем приложении Flutter.
Откройте терминал и создайте новый проект Flutter:
Откройте файл pubspec.yaml и добавьте необходимые зависимости для Parse SDK и OverlayPortal:
Запустите flutter pub get для установки зависимостей.
В lib/main.dart, инициализируйте Parse SDK с вашими учетными данными Back4app:
Замените YOUR_BACK4APP_APP_ID и YOUR_BACK4APP_CLIENT_KEY на ваши учетные данные Back4app.
В lib/overlay_screen.dart, создайте основной виджет, где мы реализуем OverlayPortal:
В этой реализации:
- OverlayPortal включается и выключается нажатием кнопки.
- Взаимодействие пользователя (открытие, закрытие или нажатие) записывается в Back4app с использованием метода _logAction.
- Накладка содержит сообщение и кнопку, которая инициирует действие.
Пользовательский интерфейс содержит кнопку, которая переключает видимость наложения. Само наложение позиционируется с помощью виджета Positioned . Когда наложение видно, на экране появляется плавающий блок с сообщением и кнопкой.
- Откройте терминал и запустите приложение с помощью:
- Нажмите кнопку Показать наложение для переключения наложения. Когда наложение видно, нажмите кнопку внутри наложения. Все взаимодействия (открытие, закрытие и нажатие) будут записаны в Back4app.
Чтобы проверить, что действия пользователя записываются:
- Перейдите на свою панель управления Back4app.
- Перейдите к классу OverlayActions.
- Вы должны увидеть записи действий (открыто, закрыто, нажато) с отметками времени.
Вы можете дополнительно настроить наложение, выполнив следующие действия:
- Изменив положение наложения с помощью виджета Positioned.
- Добавив более сложные виджеты, такие как формы или меню, в наложение.
- Стилизовав наложение с помощью различных цветов, границ и теней.
В этом учебном пособии вы узнали, как реализовать OverlayPortal в приложении Flutter для создания интерактивных наложений, которые можно включать и выключать. Кроме того, мы интегрировали Back4app для регистрации взаимодействий пользователей с наложением, предоставляя надежный бэкенд для хранения данных и улучшения функциональности приложения.
Эта настройка может быть использована для создания функционально насыщенных приложений, где взаимодействия пользователей с наложениями (например, подсказками, меню, всплывающими окнами) хранятся на бэкенде, предоставляя информацию о поведении пользователей или облегчая динамическую загрузку контента на основе данных в реальном времени.
Для получения дополнительной информации: