Как использовать Flutter Completers с бэкендом на Back4app
Фьючерсы и Потоки — это то, что нужно для любых асинхронных операций. Однако иногда этого недостаточно. Если вам нужен более продвинутый контроль над Фьючерсами, то используйте Completer. Это инструмент, с помощью которого вы можете программно завершить Фьючерс. Таким образом, это обеспечивает лучший контроль над асинхронными операциями. Этот учебник поможет вам разобраться в использовании Flutter Completers в приложении, которое взаимодействует с бэкендом на Back4app. К концу этого учебника вы научитесь использовать Completers в приложении Flutter для управления асинхронными задачами и интеграции этих задач с предоставляемым сервисом бэкенда от Back4app. Мы собираемся создать очень простое приложение, которое получает данные от Back4app бэкенда, используя Completer для управления потоком приложения.
Чтобы завершить этот учебник, вам потребуется:
- Настроенная среда разработки Flutter на вашем локальном компьютере. Следуйте руководству по установке Flutter, если вы еще не настроили её.
- Базовые знания Dart и асинхронного программирования в Flutter. Если вам нужно освежить знания, ознакомьтесь с Руководством по асинхронному программированию Flutter.
Сначала давайте настроим простой бэкенд на Back4app, с которым будет взаимодействовать наше Flutter приложение.
- Войдите в свою учетную запись Back4app и создайте новый проект.
- Настройте новый класс Parse с именем Task, который будет хранить задачи, которые наше Flutter приложение будет извлекать. Добавьте следующие столбцы в класс Task :
- name (String): Имя задачи.
- status (Boolean): Статус задачи (выполнена или нет).
- Добавьте несколько тестовых задач в базу данных Back4app для тестирования. Например:
- Задача 1: name = "Завершить учебник по Flutter", status = true
- Задача 2: name = "Начать новый проект", status = false
Ваш бэкенд Back4app теперь готов к доступу из приложения Flutter.
Далее мы создадим новый проект Flutter.
- Откройте терминал или командную строку.
- Выполните следующую команду, чтобы создать новый проект Flutter:
- Перейдите в каталог проекта:
2. Откройте проект в вашем предпочтительном редакторе кода (например, VS Code, Android Studio).
Теперь давайте добавим необходимые зависимости для взаимодействия с Back4app.
- Откройте pubspec.yaml и добавьте следующие зависимости:
2. Запустите flutter pub get для установки зависимостей.
3. В lib/main.dart, импортируйте Parse SDK:
4. Инициализируйте Parse в функции main:
Замените 'YOUR_APP_ID' и 'YOUR_CLIENT_KEY' на ваши реальные учетные данные Back4app.
Теперь давайте используем Completer для получения данных из бэкенда Back4app и контроля, когда данные будут доступны для использования в пользовательском интерфейсе.
- В lib/main.dart, создайте новый класс, который будет получать задачи из Back4app, используя Completer:
Этот класс инициализирует Completer, начинает извлечение данных и завершает Completer, когда данные становятся доступными.
2. В виджете MyApp, используйте TaskManager, чтобы извлечь и отобразить задачи:
3. Запустите ваше приложение Flutter:
Вы должны увидеть список задач, извлеченных из вашего бэкенда Back4app, с их именами и статусом завершения.
В этом уроке вы узнали, как использовать Flutter Completers для управления асинхронными операциями и контроля потока извлечения данных в вашем приложении. Интегрировавшись с Back4app, вы создали простой, но мощный бэкенд для вашего приложения Flutter, позволяющий вам динамически извлекать и отображать данные. Этот подход можно расширить для обработки более сложных сценариев, таких как аутентификация пользователей, манипуляция данными и многое другое.
Для получения дополнительной информации о том, как использовать Flutter с Back4app, ознакомьтесь с документацией Back4app по Flutter. Удачного кодирования!