Как стать автором
Обновить

Комментарии 6

Спасибо за статью. Появились направления для дополнительного чтения. Подскажите, а в SwiftUI для часов возможно программное добавление элементов интерфейса и изменение их размеров и т.п.?

Да, конечно. Размеры, позиции все есть. Единственно UIKit (изначально) не доступен, а так ограничений по сравнению c iOS не нашел. Хотя справедливости ради, пока только несколько экранов перевел. Возможно какой то функционал еще не успел затронуть с которым есть трудности.

У меня программирование - хобби :) И я с очень вялой скоростью делаю беговое приложение. Сначала я решил сделать только самые основные экраны, старт, обратный отсчет, экран с метриками + экран с паузой и завершением, экран с итоговыми данными пробежки и опять на стартовый. Со SwiftUI у меня плохо, но насмотревшись видео про спортприложение для часов с WWDC2021 (возможно вы его видели), решил попробовать. Сначала получалось, но в итоге я перешел на WatchKit, так как не смог победить некоторые проблемы. Прикрутил ко всему этому HKWorkout, Motion и Location по минимуму, чтобы убедиться, что всё работает. Всё заработало. Теперь хочу сделать экраны метрик с разным количеством полей и вот тут я опять вспомнил как хорош программный интерфейс на айфоне. А тут получается надо делать отдельные экраны, с классом для каждого. Предполагаю, что придётся всё таки осваивать SwiftUI, так как, как я понял в том числе и из вашей статьи программно количество полей не поменять в простом WatchKit :(

SwiftUI в любом случае надо учить - за ним будущее на мой субьективный взгляд. Много ограничений снимает (при разработке на часах UI) и его скорее всего будет продвигать Apple как единый способ разработки UI на всех платформах (iOS, watchOS, tvOS). Новые функции (UI) например сейчас только там появляются. Пока что еще полностью от Storyboards не ушли, но вектор развития понятен.

Раз уж тема про здоровье, как на счет излучения от самих часов?

Понятно, что сама методика изменения довольно запутанная, но даже если отталкиваться от конкретных значений в https://www.apple.com/legal/rfexposure/

Все-таки это устройство, постоянно носимое на руке, и довольно плотно к ней прилегающее. Опять же, технологии отслеживания сна, когда часы надо держать надетыми на руку всю ночь.

Вроде как мощность излучения должна зависеть от мощности устройства, но при этом у 7 модели излучение на кисть заявлена 0.03, а у SE, которые вроде менее мощные, 0.20.

Есть-ли вообще какие-то ограничения при разработке программ для часов, ведь, как понимаю, излучение так-же зависит от нагрузки на процессор и использования беспроводный интерфейсов?

Спасибо за интересный вопрос. Что касается SE то это аналог Apple Watch Series 4 (насколько мне известно - очень похожа элементная база хотя могу ошибаться) 7 ая серия стала намного энергоэфективнее. Одно из ограничений это энергоэфективность. Приложение не должно высаживать батарею и существенно сокращать время работы. Не важно чем занимается приложение: коммуникация с переферией, длительный расчет или оставлять не включенным workout. Долгое использование процессора например при пересчете данных акселерометра может привести к удалению из памяти приложения, когда оно например находится в background. Каких то конкретных цифр, к сожалению, привести не могу так как в своих проектах мы просто ставили паузу на расчет, чтобы приложение оставалось рабочим в течении всего времени пока часы были включены. По поводу переферии, то часы, когда уходят в background и гаснут существенно снижают частоту опроса и с учетом того, что это BLE устройство, не значительно просаживают батарею. Что касается разработки переферии то есть определенные требования https://developer.apple.com/accessories/Accessory-Design-Guidelines.pdf которым надо следовать.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории