Apple WatchKit czy można już pisać aplikacje na zegarek Apple?

Apple-WatchKit-ickn

Moja odpowiedź brzmi: jeszcze nie! Apple zapowiada, że API (zestaw narzędzi dla programistów) do pisania natywnych aplikacji dla Apple Watch udostępni w przyszłym roku. Więc o co tyle szumu? Już wyjaśniam…




Wczoraj Apple udostępnił WatchKit jako część systemu iOS 8.2 (na razie beta dostępna dla deweloperów) i to jest brew nagłówkowi naprawdę „COŚ” więc skąd te kontrowersje? Ano stąd, że na razie możemy pisać aplikacje dla Watch tylko jako rozszerzenia do programów na iPhone.

Jak to wygląda w praktyce?
Po pierwsze: Aby nasze aplikacje (a w zasadzie rozszerzenia) działały na Apple Watch musi być on „połączony” z naszym iPhone i być w jego zasięgu. Jeżeli iPhone się „oddali” aplikacje w zegarku nie będą działać.
Tylko programy na iOS mogą być rozbudowane o współprace z zegarkiem. Czyli „aplikacja” zegarkowa jest tylko rozszerzeniem (dodatkiem) do aplikacje na iPhone.
Nie da się uruchamiać naszych aplikacji używających WatchKit’a w iPhone za pomocą Watch’a. To znaczy, że program musimy uruchomić w iPhone aby działał z zegarkiem.
Na razie nie mamy dostępu do sensorów Watch (pulsometru itp.) ale może się do zmienić do czasu wydania wersji finalnej (premiery Watch).
Watch możemy używać jako rozrzedzenie naszego iPhona. Coś jako dodatkowy ekran z interfejsem dotykowym.

Dla tych co poczuli się zawiedzeni:
Przypomnijcie sobie jak mocno był ograniczony programista w pierwszej dostępnej oficjalnie dla deweloperów wersji iOS 2.0, a jakie możliwości mamy teraz. Podobnie będzie ewoluowało API dla zegarka.

Poszerzenia funkcji naszych iPhonów o możliwość wyświetlania powiadomień i interakcji „z nadgarstka” na początek jest najważniejsze. Pamiętajmy też, że na razie deweloperzy (ci zwykli) nie mają dostępu do zegarków i wszystko muszą testować w symulatorze XCode 6.2 beta.
Jak już pisałem najpewniej do premiery Apple wyda jeszcze kilka wersji WatchKit poszerzonych o nowe funkcje.

Co możemy teraz?
Pisać rozszerzenia do naszych aplikacji wyświetlające na zegarku powiadomienia. Powiadomienia mogą być informacyjne (tylko do odczytu), czyli po prostu dowiadujemy się o czymś i już, lub interaktywne. W drugim przypadku po zaznajomieniu się z powiadomieniem możemy jakoś na nie zareagować wybierając stosowną opcję „na nadgarstku”.

Zrzut ekranu 2014-11-20 o 21.27.16

Możemy też pisać „aplikacje” czyli programy wyświetlające informacje i reagujące na nasze akcje w bardziej złożony sposób. Nawigacja po aplikacji może odbywać się na zasadach podobnych do znanych już z iPhona: przełączania ekranów (stron), przewijania w pionie lub nawigacji kontekstowej (jak lista wywołująca dalsze ekrany bardziej szczegółowe. Coś jak puknięcie w nazwisko w Kontaktach wywołuje katę z szczegółowymi informacjami). Tu mamy wbrew pozorom spore możliwości. Na uwagę zasługuje to, że nie mamy do dyspozycji klawiatury. Zresztą jaki byłby jej sens na tak małym ekranie? Ale spokojnie… zamiast klawiatury możemy wyświetlić prośbę o „wpisanie” tekstu podając listę zdefiniowanych odpowiedzi oraz dając możliwość podyktowania dowolnego tekstu lub użycia emotikonów… wystarczy prawda?

Elementy-interfejsu-Apple-Watch
Wybrane elementy interfejsu dostępne w WatchKit

Do dyspozycji mamy znane z iOS elementy interfejsu jak: teksty, przełączniki, suwaczki (z obrazkami), obrazki (w tym animowane), listy (tabelki), przyciski, mapy (statyczne) czy menu (z od 1 do 4 guziczków) wyświetlane „nad” interfejsem aplikacji po mocniejszym przyciśnięciu ekranu. Dodatkowo mamy specjalne pola wyświetlające bieżąca datę i godzinę, odmierzające czas (timer), separatory. Elementy możemy grupować i określać odstępy między nimi czy rodzaj wyrównania. A! I bardzo ciekawa rzecz… nie możemy dowolnie umieszczać elementów interfejsu na ekranie. System wypełnia ekran „po całości” dlatego dostaliśmy do dyspozycji grupowanie i regulowanie odstępów w grupach. Nie daje nam to pełnej swobody ale za to uwalnia od martwienia się rozdzielczościami ekranu. A już na „dzień dobry” dostajemy dwie: 272x340 dla mniejszego zegarka i 312x390 dla większego. I Apple nie wyklucza innych w przyszłości.

Zrzut ekranu 2014-11-20 o 21.25.53
Pomarańczowe to to co działa w iPhone, zielone to to co działa w Watch

Dlaczego wziąłem „aplikacje” w cudzysłów? Bo kod programu jest wykonywany w aplikacji na iPhone! Watch obrabia jedynie interfejs i przechowuje niektóre jego elementy oraz reaguje na nasze akcje jak puknięcia w menu, guziki itp. Aplikacje i interfejs musimy specjalnie przygotować (wg zaleceń Apple) aby ograniczyć ilość danych przesyłanych między iPhone, a „wyświetlaczem” (czyli zegarkiem). Obrazki i logika interfejsu użyta w zegarkowym rozszerzeniu naszej iPhonowej aplikacji jest ładowana (do 20MB) na zegarek i używana w razie potrzeby. Inne obrazki czy dane są dostarczane na bieżąco z iPhone. Do iPhone trafiają też wszystkie nasze interakcje z zegarkiem.

Podsumowując… aplikacje pisane na zegarek do Apple dzielimy (na razie) na:

  • Watch App - bardziej złożone funkcje zegarkowe naszych programów z iPhone
  • Watch App with Glance - dodatki do naszych iPhonowych programów polegające na wyświetlaniu informacji.
  • Watch App with Actionable Notifications - coś jak powiadomienia w iPhone pozwalające na interakcje (jak np. notyfikacje od Twittera z możliwością odpowiedzi z centrum powiadomień ale realizowane za pomocą zegarka).
  • Watch App with Glance and Actionable Notifications - pomieszanie wyżej wymienionych.
  • „Fully Native Apps” - programy działające na zegarku (nie wymagające iPhona do pracy). Ale to dopiero „później w przyszłym roku”.

Stworzenie „rozszerzeń” zegarkowych do bardzo wielu aplikacji już działających na naszych iPhonach będzie raczej proste. Możemy spodziewać się wysypu takich dodatków (ciekawe ile z nich będzie ekstra płatne: zakup wewnątrz aplikacji) już w dniu premiery Watch. Na pierwszy ogień pójdą zapewne wszystkie programy, które usiłują nas o czymś informować czy co jakiś czas pytające nas o wybór opcji. Zresztą sami możecie popuścić wodze wyobraźni i/lub podpytać o plany producentów Waszych ulubionych programów ;-)

Myśląc o tym jaka z moich aplikacji nadaje się do rozszerzenia o „zegarek” (niewiele tego na razie) łącze się z Wami w oczekiwaniu na nadchodzące ekscytujące Apple „Czasy” ;-)





Informacje okazały się przydatne?
Daj znać znajomym o tym wpisie i zrób to po applowsku ;-)
MacWyznawca udostępnij wpisMacWyznawca udostępnij wpis

blog comments powered by Disqus