Майбутнє з Apple Watch — нові можливості для бізнесу
Вітаю. Мене звати Олег, я iOS розробник з досвідом роботи понад 7 років. Моя основна сфера діяльності — створення мобільних додатків для девайсів, які розробляє компанія Apple Inc. та які функціонують на операційних системах iOS, iPad OS, Mac OS, WatchOS.
За свою практику я створив чимало продуктів для українського та іноземного ринків Європи та США, але більшість з них — це додатки саме для iPhone. Сьогодні це дуже поширена сфера розробки, оскільки бізнес прагне бути мобільним і гнучким, надавати якісні послуги та сервіси.
Чимала кількість людей сьогодні використовують Apple Watch повсякденно починаючи зі старту продажів у 2014 році. Apple Watch — це зручний гаджет для аналізу тренувань, моніторингу сповіщень, показу контенту та багатьох інших функцій. Тому компанії все частіше звертаються до додатків для Apple Watch як до інноваційного інструмента розвитку та зростання бізнесу.
Для чого компаніям замовляти додатки для Apple Watch
Розумні годинники виконують більшість функцій, починаючи від перевірки повідомлень і закінчуючи GPS-відстеженням та навігацією. Найважливішою функцією смартгодинників споживачі вважають фітнес-функцію, за якою йдуть комунікація, здоров'я та карти.
За даними Statista, у 2022 році Apple була провідним постачальником пристроїв, що носяться, з обсягом поставок близько 146,3 мільйона одиниць у всьому світі.
Розумні годинники стають дедалі популярнішими. У звіті DataReportal зазначено, що кількість власників розумних пристроїв, тобто смартгодинників чи фітнес-трекерів, зросла більш ніж на 9% проти минулого року. Поточні тенденції свідчать про те, що до наступного року більше людей володітимуть одним із цих пристроїв, ніж планшетом. До того ж дані вже показують, що користувачі інтернету працездатного віку частіше володіють розумним годинником (22,5%), ніж ігровою консоллю (20,3%).
Загалом понад чверть користувачів інтернету віком від 25 до 44 років зараз мають розумний годинник.
Якщо ваш бізнес пропонує клієнтам та користувачам опцію швидкої дії, додаток для Apple Watch — це must have. Наприклад, ви власник невеликого ресторану, який має власну доставку. Тоді варто замовити додаток для годинника, щоб ваш гість міг дорогою додому чи в автомобілі натиснути одну кнопку і замовити свій улюблений сет вечері. Для цього не завжди потрібно мати мобільний додаток. Сьогодні додатки для Apple Watch можуть бути незалежними та виконувати повноцінні дії, які раніше неможливо було зробити без наявності додатка чи сайту.
Майже у кожного закладу чи сервісу є програма лояльності. Але всі ми знаємо, що це таке, коли у гаманці досі зберігаються десятки пластикових карток лояльності. Годинник з легкістю може замінити всі ці картки. Достатньо встановити замість звичного сканера штрих кодів EAN-13 NFC зчитувач, який налаштувати на зчитування інформації з годинника, і ваш клієнт автоматично стає таким самим мобільним, як і ваш бізнес.
Уся річ у простоті: чим менше кроків для отримання чогось ви запропонуєте клієнту, тим більше він отримає задоволення від вашого сервісу й однозначно порекомендує вашу діяльність друзям і знайомим. Бізнес має бути адаптивним до нової реальності та використовувати всі можливі інструменти для власного розвитку. І Apple Watch — це гаджет, на який варто звернути свою увагу
Розробка додатка для Apple Watch — тренування з водних видів спорту
Мені завжди було цікаво застосувати наявні навички та знання, розробивши продукт саме для Apple Watch. І ось з’явилася можливість попрацювати над таким проєктом на сервісі. Сьогодні пропоную до вашої уваги кейс — створення додатка для тренувань з водних видів спорту WatersportGPS.
Про компанію
На сервісі до мене звернувся один з учасників команди Verblike (Нідерланди) із запитом на розробку додатка для смартгодинника. Команда створює та підтримує продукти, пов’язані здебільшого зі спортивною сферою й різними тренуваннями. Продукти замовника спрямовані на ринок Європи та США, де фітнес-сфера дуже поширена.
Завдання та цілі
Коли постає питання про взаємодію з показниками фізичної активності користувача, наявність Apple Watch стає перевагою, оскільки в годиннику є велика кількість вбудованих сенсорів. Звичайно, у годиннику Apple є вбудований додаток «Тренування», тоді для чого потрібен ще додаток? Розкриємо основну ідею продукту.
Apple пропонує нам велику кількість тренувань, але тренувань саме для водних видів спорту дуже мало. Цільова аудиторія нашого продукту — спортсмени, які полюбляють водні види спорту, наприклад, серфінг, дайвінг та інші.
Завдання — розробити фітнес-додаток для годинника, який надалі буде інтегровано з наявним додатком для iOS. Можливості додатка:
- Спрямований на розширення наявних тренувань з водних видів спорту.
- Має працювати так само зручно, як і штатний додаток «Тренування».
- Фіксувати час, витрачені калорії, відстань і локації, серцевий ритм, погодні умови.
- Синхронізуватися зі штатним додатком здоров’я, фіксуючи та передаючи всю інформацію про тренування на нього.
- Озвучувати певні дії користувача у додатку.
Бюджет
Бюджет проєкту був запропонований близько 40 тисяч гривень (еквівалентно $1000), який ми розділили на декілька спринтів.
Реалізація
Після початку роботи над проєктом я побачив, що більше немає можливості використовувати фреймворк WatchKit (наданий Apple для розробки інтерфейсів для програм Apple Watch). Apple його видалили, і з 2022 року всі нові проєкти мають розроблятися з використанням SwiftUI. Це новий фреймворк декларативного програмування компанії, який прийшов замінити або покращити наявні WatchKit та UIKit.
Оскільки це відносно новий фреймворк, спершу я дуже часто звертався до документації. Те, що раніше я відтворював автоматично, зараз частково викликало ускладнення, але згодом успішно було вирішено. Завдяки великому досвіду в розробці, я швидко адаптувався і вже через кілька днів писав код практично без допомоги сторонніх ресурсів. Рекомендую обов‘язково освоїти SwiftUI для мобільних розробників, оскільки Apple вже зробила великі ставки на цей фреймворк.
Особливості проєкту
Спершу я займався лише версткою інтерфейсу, але під час реалізації тренувань з’явилося чимало питань. Оскільки без розуміння, як працює HealthKit (центральне сховище даних про здоров'я та фізичну форму на iPhone та Apple Watch) та ресурси HKWorkoutSession (сесія, яка відстежує тренування користувача на Apple Watch), дуже важко реалізувати щось, що буде хоч трохи схоже на тренування Apple.
Хоча частково годинник надає певну частину метрик, які можна отримувати на запит, іншу частину потрібно обраховувати самостійно, наприклад, кількість спалених калорій, локацію та пройдену відстань. Годинник надає доступ до пройденої відстані чи загальної кількості спалених калорій, але фактично це стосується лише спеціалізованих тренувань.
Під час активації деяких тренувань у додатку система сповіщатиме, що всі обрахунки проводитимуться на основі загальноприйнятих формул, які використовуються як основний шаблон. І саме для водних тренувань уся ця інформація недоступна, тому в пригоді стали знання математики й дослідження інших спеціалістів, які люб'язно ділилися досвідом. Маючи серцевий ритм та час тренування, ми можемо порахувати кількість спалених калорій так, як це роблять сучасні бігові доріжки. Результати підрахунків були доволі точні.
Окреме завдання — порахувати загальну пройдену відстань і середню швидкість людини. Знадобилося розуміння роботи фреймворку CoreLocation, завдяки якому отримали точні результати. Ми завжди маємо слідкувати за початковою точкою, де користувач активував тренування, розуміти, рухається він колом чи долає вже певну відстань, оскільки першим помилковим рішенням було фіксувати різницю, пройдену з початкової та кінцевої точок.
Під час руху в межах однієї локаційної зони результат не буде змінюватися, тому ми змінили підхід і почали фіксувати з високою точністю кожну точку з певним мінімальним інтервалом часу. Також варто розуміти, що частий запит локації — це негативний вплив на енергоефективність годинника. Разом з обрахунками локації нам потрібно було також отримувати й погодні умови, в яких відбувається тренування.
Найперше, що спало на думку, — використати сторонні API. Але минулого року Apple презентувала свій новий фреймворк Weather Kit, який надавав усю потрібну інформацію лише в кілька рядків коду без впровадження сторонніх рішень. Основне обмеження цього фреймворку — 10 тисяч запитів щомісяця. Потім за додаткову плату можна розширити план. Ми додали інформацію про температуру і вітер до тренування.
На цьому етапі продукт був готовий до тестування та інтеграції з наявним iOS-додатком. iOS-додаток написаний з використанням інструментів Flutter, потрібно налаштувати взаємодію шляхом штатних обмінів повідомленнями між годинником та телефоном. Якщо коротко, то годинник — це умовно незалежний девайс, який знає про існування іншої своєї частини, так званого компаньйона. Apple пропонує фреймворк WatchConnectivity для обміну такими повідомленнями. Їх кілька видів, зокрема, які надсилаються, якщо годинник і телефон знаходяться в активному стані й додатки відкриті на обох платформах. Або ж варіант, коли годинник накопичує інформацію й за можливості передає її на додаток-компаньйон. У тісній кооперації з iOS-розробником від замовника ми успішно провели інтеграцію та поєднали два додатки в одне ціле, після чого тестування набуло повноцінності.
Як це працює
Оскільки додаток для Apple Watch напряму пов’язаний з мобільним додатком, для його використання потрібно завантажити iOS-версію. Після цього буде запропоновано встановити компаньйон для Apple Watch. Усе, що залишиться, це відкрити додаток для Apple Watch і почекати, поки система синхронізується. Усе дуже просто і зручно.
Під час першого запуску Apple Watch надаватиме підказки, яку інформацію та дозволи необхідно надати системі для повноцінного використання. Наприклад, дозвіл на використання локації та запису/читання вашої інформації з програми «Здоров’я». Цього достатньо, щоб почати користуватися додатком.
Головне меню передбачає мінімально необхідний інтерфейс для зручного використання під час тренування. Необхідно просто вибрати вид тренування і натиснути кнопку GO. Після цього активується всім знайомий інтерфейс з усіма необхідними показниками: час тренування, серцевий ритм, середня швидкість, загальний шлях, який ви подолали.
Після активації тренування додаток локально починає збирати всю доступну інформацію з високою точністю (локація, серцевий ритм, кількість витрачених калорій, час тренування, погодні умови). Потім записує її у внутрішнє сховище для передачі до iOS-додатка, де надалі можна проаналізувати всі доступні тренування, пройдені раніше. Ця можливість доступна також і на годиннику. Користувач може переглянути історію всіх попередніх тренувань.
Результат
Покажу детальніше, як реалізовані екрани додатка WatersportGPS для Apple Watch.
1. Головний екран додатка, де передбачена можливість обрати та розпочати тренування, переглянути історію попередніх тренувань, налаштувати деякі опції, наприклад, звуковий супровід:
2. Опції, які дозволяють завершити тренування, поставити його на паузу або активувати так званий режим у воді, який дозволить після завершення очистити динаміки та внутрішні компоненти годинника від води шляхом вібровіддачі:
3. Список з доступних для вибору тренувань:
4. Панель активного тренування з метриками й показниками, які необхідні спортсмену, — час тренування, середня швидкість, серцевий ритм, загальний шлях:
5. Анімований таймер зі зворотним відліком до початку тренування:
6. Список усіх попередніх тренувань. Вибравши будь-який елемент, можна переглянути детальну інформацію:
7. Детальна інформація про тренування з усіма показниками, які були зібрані в процесі для аналізу:
За час виконання проєкту я неодноразово проводив власні тестування, постійно вносив корективи й покращення в наявну кодову базу для більшої точності показу результатів.
Однозначно цей проєкт є насамперед розширенням можливостей для спортсменів, які займаються водними видами спорту. Це те, що стане в пригоді всім любителям проаналізувати свої досягнення.
Впевнений, що замовник та його команда, з якої я хотів би також відзначити Владислава, розробника iOS-додатка, який доклав чимало зусиль і часу для синхронізації обох проєктів, досягнуть своїх цілей і допоможуть краще аналізувати свої здобутки, тренуватися більше й ефективніше
Зовсім скоро ви зможете завантажити додаток для Apple Watch, а поки що залишу посилання на додаток для iOS.