Dzisiejszy rynek smartfonów (w Ameryce Północnej) zdominowany został przez iPhona. Czy ktoś może rzucić wyzwanie tej uroczej, skomercjalizowanej bestii? Z elegancką konstrukcją, intuicyjnym interfejsem użytkownika, błyszczącym logo Apple oraz App Store, iPhone skradł serca wielu klientów, zamieniając niezliczone rzesze użytkowników Blackberry w maniaków Apple. Na przykład mojego tatę. Jednak wielu deweloperom nie podobała się monopolistyczna, zamknięta polityka Apple oraz zmuszanie do używania własnościowego oprogramowania. I wtedy pojawił się Android, otwarta platforma mobilna wykorzystująca Javę, która, według Google, ” stworzy prawdziwie wolne środowisko dla niezależnych deweloperów„.
Wraz z nastaniem ery smartfonów wiele firm zaoferowało swoje własne oprogramowanie. Symbian, iPhone, Windows Mobile czy Blackberry – wszystkie te rozwiązania mają znaczący udział na rynku. Co więc odróżnia od nich Androida? Według Google „Android jest pierwszą wolną platformą mobilną o otwartych źródłach, którą można dostosować do własnych potrzeb”. A jak do tego doszło?
Odrobina historii
Wszyscy kochają Google, a Google ma pieniądze. Te dwa fakty są kluczowe dla rozwoju projektu Android. W lecie 2005 roku Google miało tyle pieniędzy, że samo nie wiedziało, co z nimi zrobić. Kupiło więc wiele start-upów. Jednym z nich było Android Inc.. Po długim okresie odprawiania czarów w Kalifornii, Google namówiło LG, Samsunga, T-Mobile, ebay, Sprinta, Intela i Texas Instruments (pośród innych) do utworzenia Open Handset Alliance. Wkrótce po tym, 5 listopada 2007 roku, został zapowiedziany Android, pierwsza prawdziwie otwarta i kompletna platforma mobilna na świecie. Kilka dni później została wydana pierwsza, wczesna wersja SDK. W siedzibie Google wciąż odprawiano czary i pod koniec sierpnia został zapowiedziany Android Market. 21 października 2008 roku Android stał się projektem Open Source. Następnego dnia T-Mobile G1, pierwszy telefon oparty na Androidzie, został udostępniony klientom.
iPhone kontra Android: z punktu widzenia dewelopera
Jako deweloper open-source i biedny student, uwielbiam darmowe oprogramowanie i nie znoszę tego własnościowego. Dlatego SDK od Google szczerze mnie ekscytuje. Po pierwsze, i bardzo, bardzo ważne, w przeciwieństwie do Apple, Android może mieć Javę i Flasha! Steve Jobs powiedział swego czasu o Javie: „Nie warto się tym zajmować. Nikt już tego nie używa. Java jest duża i ociężała.”. Jestem pewien, że jego odczucia względem Flasha są podobne. Jako miłośnik Maca muszę przyznać, że to bardzo bolało. Wracając do Androida, jego środowisko programowania jest podobne do XCode. Android jest zintegrowany z Eclipse, włącznie z projektowaniem interfejsu i emulatorem. Dokumentacja jest zaskakująco dobra; do prawie każdej metody dołączony jest prosty przykład kodu. Java jest dostępna na wielu urządzeniach mobilnych, więc dla wielu deweloperów będzie to platforma podobna do tego, co już znają. Inną istotną cechą platformy jest Android Market, będący odpowiedzią Google na App Store. Zasady, na jakich oprogramowanie jest publikowane w Android Market są znacznie bardziej przyjazne w porównaniu z podejściem Apple (może to dobry pomysł, a może zły, zobaczymy). Ludzie, którzy lubią słowa „wolność”, „otwartość” i „zachowanie większej części moich zysków zamiast oddawania ich Apple” pokochają model współpracy oferowany przez Androida.
Android nie jest oczywiście pozbawiony wad. Można go zastosować na wielu różnych typach telefonów, o różnych rozdzielczościach, z różnymi przyciskami, itd.. To, jak Google poradzi sobie z tym problemem, może mieć zasadniczy wpływ na sukces lub porażkę Androida. Pojawiają się również pytania o szybkość działania Javy na tej platformie (jak zawsze, kiedy chodzi o Javę), ale rozwiązaniem tego problemu ma być wirtualna maszyna Dalvika – Dalvik JVM. Jeśli zaś chodzi o Android Market, to stosunkowo liberalna polityka dopuszczania oprogramowania umożliwia zamieszczanie tam aplikacji marnej jakości, co może przeszkadzać deweloperom. W Android Market w filtrowaniu kiepskich aplikacji mają pomóc użytkownicy, oceniając je (przypisuje redakcja). Perspektywa zatrzymania dla siebie większej części zysków, zamiast dzielenia się nimi z Apple jest bardzo kusząca.
Tak więc połączenie open-source, wolnego środowiska, technologii Java i Flash, jak również bardziej przyjazna polityka udostępniania aplikacji mogą się wydawać marzeniem deweloperów, prawda? A to jeszcze nie wszystko.
iPhone kontra Android: z punktu widzenia klienta
Wszyscy wiemy, że klientów nie interesuje „otwarta architektura”, „wsparcie dla Javy” czy „wielozadaniowe środowisko” – czyli to, co nas, deweloperów, tak bardzo ekscytuje. A liczy się to, czego chcą klienci. Na szczęście telefon od Google ma zwykłemu użytkownikowi wiele do zaoferowania. Jedną z kluczowych koncepcji jest integracja z usługami Google (mapy, gmail). „Prawdziwa przeglądarka internetowa” jest również warta uwagi. Wciąż jednak miałbym problemy z przekonaniem mojej mamy, niezbyt obytej z techniką, że Android jest lepszy od iPhone. Dlaczego? Bo iPhone to błyszczące cacko. iPhone jest niesamowicie sexy, Apple jest niesamowicie sexy, i to, co mówi Steve Jobs, też jest niesamowicie sexy. iPhone ma bardzo intuicyjny interfejs, każdy może go w pełni wykorzystać. Czy telefon Google będzie w stanie osiągnąć taki poziom? Pomimo swoich braków (brak wielozadaniowości, fizyczna klawiatura, Java, Flash, czy porządna przeglądarka internetowa), iPhone wciąż jest piękny, a to trafia do większości użytkowników.
Jakich aplikacji potrzeba Androidowi, żeby odnieść sukces? Google uwielbia niezależnych deweloperów, a to oni będą stanowili o ostatecznej różnicy. Trzeba się przyjrzeć tym aplikacjom.
Czy więc Android naprawdę będzie rewolucją w świecie mobilnej technologii? Pozostaje mi tylko mieć taką nadzieję.
Powyższy tekst jest tłumaczeniem artykułu Josiaha Hestera, który znajduje się na stronie http://java.dzone.com/articles/googles-challenge-iphone-andro