WatchKit — набор SDK для Apple Watch: какими будут первые сторонние приложения для Apple Watch

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

Apple WatchKit Вообще, следует сразу оговориться: полноценные и самодостаточные сторонние приложения с помощью WatchKit создавать пока нельзя. По крайней мере в начале своего пути Apple Watch с точки зрения разработчиков будут выглядеть как ещё один элемент интерфейса iPhone, и именно на смартфоне будут работать сами приложения. В следующем году компания обещает предоставить сторонним разработчикам возможность создания и полноценных приложений для Apple Watch, однако произойдёт это, вероятно, не ранее, чем будут определены параметры требований, которые необходимо предъявлять к таким приложениям, и в первую очередь — с точки зрения эффективного использования заряда батареи. А это возможно лишь после того, как будет проанализирована информация, полученная от владельцев новинки. Впрочем, те несколько месяцев, которые остались до поступления часов в продажу, сторонние разработчики могут провести за «втягиванием» в модель использования часов, предложенную Apple. То есть с пользой для своего опыта и для самого устройства, которому к моменту рыночного дебюта совсем не навредит широкий выбор соответствующих приложений в онлайновом магазине App Store. Для работы с WatchKit разработчикам необходимо загрузить новую версию среды разработки Xcode и интегрировать новые возможности в существующие проекты приложений для iOS.

В данный момент WatchKit позволяет совместимым приложениям взаимодействовать с пользователем с помощью трёх интерфейсных моделей: Glances, «Активные уведомления» и «приложения на базе WebKit».

Apple WatchKit Glances — одностраничные виджеты, отображающие какую-либо информацию, вроде прогноза погода или новостей. Между соседними Glances, созданными различными приложениями, можно переключаться жестом пролистывания вправо или влево. Glances можно сравнить с виджетами из вкладки «Сегодня» из «Центра уведомлений» iOS.

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

Второй вариант — «Активные уведомления», которые, в свою очередь, позволяют не только просматривать уведомления, но и отвечать на них, выполняя предлагаемые действия. Уведомления бывают двух видов — краткие и полные (в оригинале — Short Look и Long Look notifications).

Apple WatchKit Краткие уведомления отображают минимум информации: иконку приложения, короткое описание события (например, «Новое сообщение») и название уведомляющего приложения. Если же поднять руку, на которую надеты часы, или просто коснуться экрана, то отобразится полное уведомление, содержащее иконку приложения, полную информацию из уведомления, а также, в случае необходимости, кнопки для выполнения каких-то действий в ответ на уведомление. Apple требует от разработчиков создавать по два варианта полных уведомлений: обычные динамические и статические, которые используются в режиме низкого энергопотребления.

Наконец, «приложения на базе WatchKit» позволяют разработчикам создавать пользовательский интерфейс, работающий на Apple Watch, для приложений, запущенных на iPhone.

Apple WatchKit Как и в случае с Glances и уведомлениями, использование «приложения на базе WatchKit» предполагает, что основной код работает на смартфоне в фоновом режиме (Apple называет такой код WatchKit extension), передавая данные по беспроводному интерфейсу в Apple Watch.

В интерфейсе Apple Watch используется новый шрифт, название гарнитуры — San Francisco. Дисплей 42-миллиметровой модели часов обладает разрешением 312×390 пикселей, у 38-миллиметровой модели разрешение экрана немного меньше — 272×340 пикселей. Точные размеры экранов неизвестны, однако грубые подсчёты показывают, что в обоих случаях разрешающая способность дисплея составляет примерно 320 пикселей на дюйм.

Apple WatchKit Сенсорный интерфейс Apple Watch несколько отличается от привычного Multi Touch, ставшего стандартом де-факто благодаря iPhone. Основные жесты сенсорного интерфейса часов — прикосновение и пролистывание, однако привычные многоточечные жесты (вроде масштабирования путём растягивания) здесь отсутствуют. Для масштабирования используется колёсико Digital Crown. Кроме того, в отличие от iPhone и iPad, в интерфейсе Apple Watch присутствует Force Touch — жест нажатия одним пальцем, который используется, например, для вызова контекстных элементов интерфейса или меню. Функции привычных жестов предопределены Apple и не могут быть изменены и дополнены: вертикальное пролистывание активирует скроллинг, горизонтальное пролистывание переключает страницы, прикосновениями осуществляется выбор элементов.

В данный момент Apple ограничивает разработчиков двумя вариантами основного интерфейса приложений на базе WatchKit. Первый из них — навигационный стек — иерархический, аналогичен интерфейсу приложения «Настройки» из iOS: пользователь может выбирать один из пунктов меню для прохождения на более низкий уровень или же использовать кнопку возврата на предыдущий уровень.

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

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

Apple WatchKit Карты в приложениях отображаются в виде неинтерактивных изображений. Нужный участок карты генерируется расширением WatchKit в iPhone (напомним, в часах Apple Watch нет приёмника GPS), а затем пересылается в Apple Watch для отображения. В таких изображениях может быть использовано до пяти заметок. В роли заметок могут выступать стандартные метки карт (по умолчанию — красного цвета) или изображения, предусмотренные разработчиком. Таким образом, встроенный в стороннее приложение картографический виджет не позволяет масштабировать или перемещать карту. Если же коснуться его пальцем, то на часах откроется стандартное приложение «Карты».

Apple WatchKit Приложения могут использовать 20-мегабайтный кэш для хранения изображений. WatсhKit предоставляет возможность использования анимации путём вывода нужного количества статических изображений из кэша. Поддержка видео не предусмотрена.

Apple также предоставляет возможность использования механизма Handoff, которые позволяет передавать данные об актуальном контексте работы приложения из часов в iPhone. Например, если нажать на иконку на часах, то приложение на iPhone не только запустится, но и откроется именно в том контексте, который в данный момент подходит более всего.

Таким образом, различные интерфейсные элементы в сочетании с возможностью задействования большинства механизмов, используемых в приложениях для iOS, позволяют ожидать появления «часовых» версий различных популярных приложений. Тем не менее, вероятно, в большинстве случаев приложения для Apple Watch будут специализироваться на оперативном предоставлении пользователю актуальной информации и получении от него реакции на такую информацию. Другими словами, даже если «тетрис» для часов и появится в App Store, мейнстримом он вряд ли станет.

«Приложения для часов будут дополнять приложения для iOS, а не заменять их. Если время вашего взаимодействия с приложениями для iOS исчисляется в минутах, то с приложениями для часов вы взаимодействуете считанные секунды», — говорится в официальной документации.

И всё-таки, наручные часы — очень неоднозначное устройство. Повсеместное распространение мобильных телефонов, большинство из которых прекрасно справляются с функцией часов, позволило многим людям с радостью освободить свои запястья от браслетов, которые ещё пару десятков лет назад были обязательным аксессуаром практически любого взрослого человека. Исследовательская компания YouGov в 2011 году провела опрос, результаты которого показали, что несмотря на то, что владеют часами около 80% респондентов, носят их на руке лишь 41% (из тех, кто имеет). В следующей таблице приведены более подробные результаты опроса, которые позволяют лучше увидеть, кто сейчас носит часы на руке:

Apple WatchKit С небольшими натяжками можно констатировать: мобильные телефоны позволили трём из пяти владельцев наручных часов положить их, часы, дома на полку. Для того, чтобы смарт-часы смогли взять реванш, они должны обладать такими способностями, которые смогут убедить пользователей согласиться на ношение браслета. И, разумеется, одним из главных факторов (а может, и самым главным фактором) потенциальной популярности Apple Watch станут качественные сторонние приложения.

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

Полный текст статьи читайте на iXBT