Apple Watch завоевали любовь пользователей и стали не просто аксессуаром, а полезным и удобным девайсом. Функциональное дополнение к смартфону, которое сокращает время использования телефона и упрощает доступ к функциям.

“Умные” часы соединяются с iPhone, чтобы показывать уведомления, отвечать на звонки, отправлять сообщения. Apple Watch ценятся за свою пользу, ненавязчивость и мобильность, так как часами человек пользуется на ходу.

Часы стали самостоятельным устройством и вопрос разработки для них отдельных приложений актуализировался. Обычно часы зависят от приложений, которые установлены на связанном iPhone. Можно ли разработать независимое приложение для Apple Watch и как это сделать — попробуем разобраться.

Как работают Apple Watch?

Приложения watchOS встроены в приложения iOS. То есть, когда вы устанавливаете приложение iOS на iPhone, содержащее внутри приложение для watchOS, оно автоматически передается на часы по Bluetooth (если в этот момент устройства подключены друг к другу).

Сами часы работают на операционной системе watchOS. Она основана на iOS и имеет много схожих функций.

Чтобы разработчики могли строить собственные решения для часов, существует WatchKit. WatchKit — это фреймворк, который предоставляет инфраструктуру для создания приложений watchOS.

Само приложение состоит из двух частей: WatchKit app (приложение) и WatchKit extension (расширение). Первое загружается в сами часы и содержит экраны и статические ресурсы. Задача WatchKit app определить, что пользователь взаимодействовал с элементами интерфейса и передать запрос в WatchKit extension, который работает на связанном iPhone. Расширение отвечает за реализацию логики работы в приложении и обновляет данные для WatchKit app.

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

Рассмотрим работу и взаимодействие WatchKit приложения и расширения подробнее.

WatchKit приложение запускается на устройстве в результате действия пользователя, или в ответ на уведомление. После запуска на экране отображаются элементы интерфейса, с которыми пользователь может взаимодействовать, чтобы выполнить задачи.

Расширения — отдельные бинарные файлы, являются частью пакета приложения для iOS, своего рода родительского приложения. После того как iOS приложение, в котором содержится расширение WatchKit, установлено на iPhone, оно становится доступно с устройства часов. Когда пользователь запустит приложение на часах, WatchKit запустит соответствующее расширение на подключенном iPhone и начнет процесс инициализации приложения.

Зависимость двух устройств друг от друга создает ограничения. Поэтому с выпуском новых версий систем и устройств Apple представили независимые приложения для часов.

Независимые приложения для часов

Начиная с 2019 года Apple позволили создавать независимые приложения для часов.

Сегодня разработчики создают приложения только для Apple Watch без сопутствующего приложения для iOS. Готовый продукт публикуется в App Store для часов.

При создании проекта в Xcode теперь доступно две опции: Watch App и Watch App for iOS App - fully independent или dependent приложение для часов.

Независимые приложения — большой шаг вперед как для разработчиков, так и для пользователей. Для последних это особенно важно: возможность использовать компактные и функциональные часы без телефона — то, о чем мечтают многие.

Часы можно использовать как ключи (для машины, для дома), при этом вам не нужно брать с собой телефон. Утренние пробежки и занятия спортом тоже могут стать более мобильными: измерение пульса, ритма и даже музыкальный плеер будут доступны на кисти руки. Помимо таких вещей как будильник, заметки и прочих полезных вещей для организации, на Apple Watch можно даже поиграть в игры. Например, сыграть партию в шахматы в ожидании назначенной встречи.

Создание приложений watchOS на no-code

Приложения для большинства устройств Applе создаются на языке Swift с использованием фреймворка SwiftUI. SwiftUI — набор инструментов для создания интерфейса приложения. Фреймворк относится к декларативному программированию, которое значительно упрощает разработку. Отличие декларативного программирования в том, что при таком подходе не нужно составлять детальный алгоритм, описывающий как получить желаемый результат. Достаточно объяснить то, каким мы хотим видеть пользовательский интерфейс.

Именно так работает SwiftUI, при использовании которого указывается, что должно получиться в результате, а не то “как” это должно произойти. SwiftUI уже причисляют к low-code технологиям за минимум кода.

Более того, если вы пишете код на SwiftUI для приложения, без глобальных изменений он заработает на любом из устройств Apple: часах, iPhone, даже TV.

Если переносить разработку на no-code платформу, такую как AppMaster, она становится еще проще. AppMaster уже использует Swift для разработки iOS приложений.

Вы можете работать с платформой по трем сценариям:

  1. создать полностью независимое приложение для Apple Watch и опубликовать его в App Store;
  2. конвертировать приложение iOS и создать для него зависимое приложение для часов;
  3. создать пару приложений: для iOS и watchOS.

No-code инструмент предоставляет доступ к гибкому drag & drop дизайнеру, позволяя быстро собрать экраны приложения без написания кода. По такому же принципу строится работа с логикой. Здесь вы используете отдельные блоки, из которых собираете бизнес-процессы.

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

Все основано на drag & drop технологии, что в разы оптимизирует процесс разработки.

С чем могут возникнуть сложности в разработке приложений для часов?

Часы имеют очень маленький экран и ограниченный список элементов, которые можно добавить. Есть также ограничения на расстановку этих элементов.

Решить проблему можно, подключив сторонний билдер. Например, можно использовать какой-нибудь сторонний инструмент для создания интерфейса приложения, а бэкенд часть доверить AppMaster. Платформа позволяет легко подключать сторонние сервисы и создавать интеграции.

Отвечая на наш вопрос “можно ли создать приложение для watchOS на no-code платформе”, мы говорим — да. No-code упростит разработку, но есть ограничения по части дизайна, которые можно обойти, подключив дизайн-билдер.

Стоит ли создавать приложения для часов

Apple Watch открывает для разработчиков возможности для создания новых интересных решений. Рынок только развивается, а значит конкуренция еще не на таком высоком уровне. Вы можете придумать что-то стоящее, а идеи подскажут желания пользователей, которые часто хотят не зависеть от смартфонов и иметь под рукой, а точнее на ней, только часы.

А с такими инструментами, как AppMaster, создание приложений превратится в простой процесс, но с отличным результатом.