Как построить бекенд для WatchOS?
В этом учебном пособии вы узнаете как создать бэкенд для watchOS приложений с использованием Back4App.
Создаете ли вы расширение WatchKit для вашего приложения для iPhone или разрабатываете отдельный опыт Apple Watch, Back4App упрощает вашу работу, предоставляя необходимые инструменты.
Вы интегрируете такие функции, как безопасная база данных, функции Cloud Code, запросы в реальном времени (Live Queries) и аутентификация пользователей — все это без управления собственными серверами.
Вы также увидите, как быстрая процедура запуска Back4App и удобная среда позволяют вам сосредоточиться на функциональности ваших приложений watchOS, а не на настройке серверов.
В процессе вы научитесь выполнять такие задачи, как планирование заданий, настройка вебхуков и конфигурация push-уведомлений.
К концу у вас будет прочная основа для расширения ваших приложений для часов или приложений для iOS для производственных нужд, при этом обеспечивая бесшовную синхронизацию данных (по интернет-соединению) между приложением WatchKit и вашим бэкендом.
- Учетная запись Back4App и новый проект Back4App Начало работы с Back4app. Если у вас нет учетной записи, вы можете создать ее бесплатно. Следуйте приведенному выше руководству, чтобы подготовить ваш проект.
- Среда разработки watchOS/Xcode У вас должна быть установлена Xcode с SDK watchOS. Вы можете запускать и собирать ваше расширение WatchKit как на реальных Apple Watch, так и в симуляторе.
- Parse Swift SDK Используйте Swift Package Manager для установки и настройки SDK для ваших watchOS или комбинированных iOS приложений.
- Знание Swift, Xcode и экосистемы разработки Apple Документация для разработчиков Apple. Если вы новичок на платформах Apple, потратьте некоторое время на изучение документации по watchOS и iOS перед началом.
Убедитесь, что вы соответствуете этим предварительным требованиям, прежде чем начать. Наличие настроенного проекта Back4App и готовой локальной среды watchOS поможет вам легко следовать инструкциям.
- Почему вам нужен проект Back4App Новый проект Back4App необходим для хранения всех данных и выполнения облачного кода для ваших watchOS приложений. Это служит основой вашего бэкенда.
- Создайте ваш проект
- Войдите в Back4App.
- Нажмите “Новое приложение” в панели управления.
- Назовите ваше приложение (например, “WatchOS-Backend-Tutorial”).
![Document image Document image](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/drXO0UqsgxhFvRDiVmsMb_image.png?format=webp)
- Установите Parse Swift SDK Добавьте зависимость Parse Swift в ваш Package.swift или используя Файл → Swift Packages → Добавить зависимость пакета в Xcode. Укажите URL:
- Инициализируйте Parse в вашем watchOS или общем коде В коде запуска вашего приложения WatchKit или в общем файле, доступном как для вашего watchOS так и для iPhone приложения, инициализируйте Parse:
На этом этапе ваше watchOS приложение может взаимодействовать с бэкендом Back4App. Будь то независимое Apple Watch приложение или расширение WatchKit в паре с iPhone приложением, все данные бэкенда проходят через Parse Swift SDK.
Back4App использует функцию схемы на запись Parse Server. Вы можете определить таблицы (классы) в разделе Back4App Database или позволить им создаваться автоматически, когда объекты впервые сохраняются. Например, если ваши watch приложения отслеживают данные о здоровье, у вас может быть класс “HealthMetrics” с полями, такими как частота сердечных сокращений, шаги или тип тренировки.
AI Agent от Back4App AI Agent позволяет вам описывать вашу схему на простом языке:
- Откройте AI Agent в панели управления вашего приложения.
- Укажите детали, такие как “Пожалуйста, создайте класс Watch Metrics с полями: dailySteps (Число), heartRate (Число).”
- AI автоматически создаст схему для вас.
![Document image Document image](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/0snNZwHWzxuXlNu30n7IA_image.png?format=webp)
Ниже приведен пример сохранения и запроса данных из приложения watchOS. Предположим, у нас есть HealthMetrics структура:
При необходимости ваши watchOS или iOS приложения также могут отправлять REST-запросы:
Back4App также предоставляет конечную точку GraphQL. Например:
Если вам нужны обновления данных в реальном времени на вашем Apple Watch, включите живые запросы:
- Включите Live Queries в разделе Server Settings в Back4App.
- Настройте URL живого запроса в вашем коде watchOS:
Затем подпишитесь на изменения:
Back4App позволяет использовать списки контроля доступа (ACL) и разрешения на уровне классов (CLP) для защиты вашей базы данных. Например, вы можете ограничить доступ к определенным метрикам только для пользователя, который их создал, или разрешить доступ только для аутентифицированных аккаунтов.
- Разрешения на уровне классов Перейдите в База данных → Класс → Безопасность для определения значений по умолчанию (например, только для чтения для всех, запись для владельцев).
- ACL в коде Вы можете добавить ACL к каждому объекту в вашем WatchKit или общем коде. Например:
Это гарантирует, что только вошедший в систему пользователь может просматривать или изменять объекты HealthMetrics, которые они создают.
Облачный код помогает вам выполнять сложные или конфиденциальные операции на стороне сервера, такие как валидация данных, вызовы внешних API или ведение журналов. Эта настройка полезна для минимизации нагрузки на устройства watchOS и сохранения заряда батареи на Apple Watch.
В вашем main.js:
Используйте Back4App CLI для развертывания:
Если вам нужны внешние библиотеки в вашем Cloud Code:
- Добавьте зависимости в package.json (в папке вашего Cloud Code).
- Используйте require('your-lib') в main.js.
По умолчанию класс User готов в Back4App. Убедитесь, что «Включить разрешения на уровне класса» настроено правильно для объектов пользователей.
В Parse Swift вы можете зарегистрировать пользователя из вашего кода watchOS:
Если вы планируете интегрировать вход через Apple, Google или Facebook в ваше приложение watchOS или iPhone, вы можете сделать это с помощью соответствующих функций социального входа Parse Swift. См. Документация Back4App для получения подробной информации.
Если ваши приложения для часов нуждаются в загрузке изображений, журналов или небольших файлов данных, вы можете полагаться на ParseFile:
Вы можете хранить изображения тренировок или ежедневные снимки прогресса:
Проверьте ваши ACL файлов. По умолчанию URL-адреса файлов доступны, если кто-то получит прямую ссылку. Вы можете защитить или контролировать доступ к файлам через конфигурацию файлов вашего сервера parse.
Пользователи Apple Watch могут не всегда управлять входами непосредственно на часах, но включение подтверждения электронной почты помогает сохранить их данные в безопасности.
- Перейдите в Настройки приложения → Электронная почта.
- Включите Подтверждение электронной почты.
- Настройте шаблоны по мере необходимости.
Для сброса пароля:
Облачные задания позволяют автоматизировать фоновые задачи, такие как ротация старых данных или генерация отчетов о использовании для вашей аналитики watchOS.
В main.js:
- Разверните ваш код.
- Перейдите в Настройки приложения → Настройки сервера → Фоновые задания и запланируйте его на ежедневной основе.
![Планирование облачного задания Планирование облачного задания](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/5wG60YnWIST74erryTb-u_image.png?format=webp)
Вебхуки уведомляют внешние сервисы, когда в вашем приложении происходят определенные события. Например, вы можете захотеть отправлять уведомление в канал Slack каждый раз, когда записывается новая метрика.
- В панели управления Back4App перейдите в Дополнительно → Вебхуки.
- Добавьте вебхук с конечной точкой (например, URL Slack).
- Выберите событие (например, “Новая запись в HealthMetrics”).
![Добавление вебхука Добавление вебхука](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/morUMdwsAbVQ1EmBfUfAA_image.png?format=webp)
Каждый раз, когда пользователь добавляет новую запись dailySteps, ваш канал Slack получает уведомление. Вы также можете определить более сложную логику в Cloud Code для отправки пользовательских данных в ваши внешние сервисы.
Панель администратора доступна через вашу консоль Back4App в разделе Дополнительно → Админ-приложение. Включите его и создайте администратора для управления данными через веб-интерфейс, если вам нужен простой интерфейс для не технических заинтересованных сторон.
![Включить админ-приложение Включить админ-приложение](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/5BTk1ntDh9JLXurObmm_o_image.png?format=webp)
- Просмотр и редактирование данных
- Управление журналами и облачными заданиями
- Отслеживание аналитики или отправка уведомлений
Это простой способ сотрудничать с данными без необходимости прямого доступа к базе данных или коду.
На протяжении этого руководства вы узнали как создать бэкенд для watchOS с использованием мощных функций Back4App. Вы настроили безопасную схему базы данных, написали облачный код, обрабатывали запросы в реальном времени и реализовали аутентификацию пользователей. Теперь ваше приложение WatchKit может хранить и синхронизировать данные с минимальными усилиями.
- Усовершенствуйте свои приложения для часов путем интеграции продвинутых облачных функций для персонализированных уведомлений или преобразования данных.
- Изучите дополнительные функции приложений iOS, такие как фоновая синхронизация и стратегии кэширования для вашего Apple Watch.
- Читать официальную документацию Back4App для получения дополнительной информации о продвинутой безопасности, аналитике и производительности.
- Оптимизируйте для App Store для распространения вашего расширения watchOS или отдельного приложения для часов.
Расширяя свой бэкенд, вы можете предоставить надежные приложения для watchOS которые работают без сбоев даже при ограниченном интернет-соединении. Продолжайте развивать и наслаждайтесь мощью Back4App для ваших опытов с Apple Watch!
![Doc contributor](https://s3.amazonaws.com/archbee-animals/cat.png)