Napisałbyś aplikację na komórkę? Jeśli tak, to na jaką platformę?

Aplikacje na komórki z roku na rok stają się coraz bardziej popularne. Wraz z większą dostępnością telefonów takich jak iPhone, Blackberry, czy tych opartych na Google Android i Windows Mobile rośnie popyt i dostępność aplikacji pisanych pod te platformy.

Patrząc kiedyś na ilość i różnorodność komórek w moim domu zacząłem się zastanawiać nad ich wykorzystaniem do czegoś nowego – programowania aplikacji mobilnych. Na chwilę obecną u mnie w domu mam dostępne następujące platformy:

  • Symbian 9.1 – Nokia E65
  • iPhone OS 3.1.2 – Apple iPhone 3Gs
  • Windows Mobile 6.1 – HTC TyTN II
  • Android 1.6 (Donut) – HTC Magic
  • Blackberry OS 4.6 – Blackberry Bold 9000
  • Blackberry OS 4.5 – Blackberry Curve 8320
  • ?? – Motorola RAZR V3xx

Zasięgnąwszy trochę literatury odkryłem, że byłbym w stanie (w rozumieniu: osiągalne z technicznego punktu widzenia) pisać aplikacje na 4 z wymienionych powyżej platform. A to z racji posiadania odpowiednich narzędzi by:

  1. aplikację napisać i przetestować dzięki udostępnionym SDK
  2. aplikację dystrybuować dzięki wsparciu producentów komórek

Sklepów, czy też miejsc gdzie użytkownicy komórek mogą zaopatrzyć się w nowe aplikacje, jest kilka. Są to także miejsca, gdzie programiści mogą sprzedawać swoje programy.

  • Android Market – Google, 20 tyś aplikacji, 1 milion potencjalnych klientów (dane na czerwiec 2009)
  • App Store – Apple, 115 tyś aplikacji, 50 milionów potencjalnych klientów (dane na wrzesień 2009)
  • App World – RIM, 2 tyś aplikacji, 8 milionów klientów (dane na marzec 2007)
  • Windows Marketplace for Mobile – Microsoft, 376 aplikacji, niewiadoma ilość potencjalnych klientów

Jednak, aby skorzystać z dobrodziejstw bycia autorem popularnych aplikacji często trzeba ponieść dość spore koszty:

  • Android Market – 25$; Google zatrzymuje sobie 30% przychodów z aplikacji; Android SDK za darmo
  • App Store – 99$/rok; SDK za darmo dostępne tylko na Mac OS X; Apple zatrzymuje sobie 30% przychodów z aplikacji
  • App World – 200$; RIM zatrzymuje sobie 20% przychodów z aplikacji; Blackberry SDK za darmo
  • Windows Marketplace for Mobile – 99$/rok, później $99/aplikację po pierwszym roku (studenci nie płacą); Windows Mobile SDK za darmo, Visual Studio płatne

Jeśli każda z platform wydaje się mieć wady i zalety. Która zatem wg. Ciebie platforma jest najlepsza dla Twojej aplikacji i Twojego sukcesu?

12 Responses to “Programowanie aplikacji na platformy mobilne”

  1. Roko Says:

    Prosiłbym coś na Samsunga. Userów wielu, softwareu niewiele. Serio.

  2. ptashek Says:

    Android, bo:

    a) Te 25$ oplaty rejestracyjnej placisz tylko raz i jest to znikoma kwota w porowaniu z konkurencja.

    b) Platforma jest otwarta i poza SDK ma rowniez niskopoziomowy NDK.

    c) Ograniczenia dla aplikacji w Android Market sa niewspolmiernie mniejsze niz te w App Store.

    d) Trudniej zginac w szumie. Mniejsza ilosc aplikacji na Androida daje chwilowo duze szanse na szybkie zbudowanie tzw. “user base” jesli produkt jest dobry.

    Teraz glowna wada – fragmentacja. SDK ma minimum cztery wersje (1.5, 1.6, 2.0 i 2.1) i na rynku sa urzadzenia z Androidem w kazdej z tych wersji (od G1 po Nexus One). Zapewnienie kompatybilnosci aplikacji z kazdym z nich jest cokolwiek problematyczne, bo jednak testowanie na emulatorze a dzialanie na zywym sprzecie to nie to samo.

    Podarowalbym sobie zupelnie Symbiana. To jest umierajacy produkt i w przyszlosci ma go zastapic MAEMO. RIM jest mimo wszystko produktem niszowym. Apple tak, ale restrykcje sa chore. Windows Mobile… jak najbardziej, choc nie wroze mu dlugiej przyszlosci.

  3. bobiko Says:

    JA bym wybrał symbiana, mimo wszystko. I nie jest do końca prawdą, że Symbian umiera bo na wiosnę przewidziana jest premiera zupełnie nowej wersji, która właśnie ma usprawnić to, co do tej pory kulało i wprowadzić innowacyjne zmiany. Zatem należy odczekać. Maemo jest fajne ale wciąz rozwojowe i niestabilne, dlatego z pewnymi ocenami odnośnie tej platformy należy odczekać. :]

  4. tetek Says:

    Maemo niestabilne? Już poprzednia wersja hulała bez problemu.

    A co do symbiana – spróbuj napisać coś co działa jednocześnie na kilku słuchawkach. Efekt końcowy jest taki, że piszesz na konkretny telefon. A że jest ich trochę i chciałbyś mieć jako- takie pokrycie…. Powodzenia.

    “Teraz glowna wada – fragmentacja” – to nie tylko główna wada. To całkowity nokaut. SDK Androida to jakaś wielka pomyłka. I to programiści programistom zgotowali ten los. Już nie mówiąc o “symulatorze”. Jeżeli chcesz mieć pewność, że aplikacja działa na każdym z telefonów, to musisz go po prostu mieć. Tak jak symbianowe słuchawki zresztą.

    Co do AppStore to:
    a) ograniczenia wychodzą na dobre tej platformie – nie widziałem aplikacji która np. kradnie numery kont bankowych i kart kredytowych (Android) czy też czegoś, co jest w ogóle niespójne z platformą
    b) te “problemy” o których głośno wokół appstore to w rzeczywistości pojedyńcze przypadki. Ile ich było na 115 tyś – setka? Dwie setki? Cóż -tam też pracują ludzie. Nie mniej deweloperzy zawsze nagłaśniają tą sprawę udając pokrzywdzonych, a tak naprawdę najczęściej problemy polegają na niestabilności aplikacji czy korzystaniu z zastrzeżonego API.

  5. zen Says:

    Na tak zadane pytanie są tylko dwie możliwe odpowiedzi: Android lub iPhone. Z racji osobistych sympatii moja odpowiedź to Android ;) Argumenty są wyżej, z wad dorzucę jeszcze do fragmentacji: oprócz różnych wersji platformy masz jeszcze kilka rozdzielczości do testowania :/
    Pisałem na prawie wszystkie platformy przez Ciebie wymienione 9oczywiście hobbystycznie) i Android oferuje najwięcej programiście. SDK ma trochę wad, jedną z nich jest dokumentacja, która kuleje. Nigdy nie wybrałbym platformy, która nie posiada centralnego repozytorum aplikacji, więc symbian i inne wynalazki odpadają. Odpada również WM, który z kolei ja uważam za wymierający system (serio, używałem wiele lat, i znam na wylot)
    Jest jeszcze PalmOS, który powolu zyskuje użytkowników.

    P.S. Zapraszam na FOSDEM w lutym, będę, jest szansa w końcu napić się piwa. Tym bardziej, że dostępne będą najlepsze piwa na świecie.

  6. zen Says:

    Dorzucę jeszcze a propos iPhone – Objectiv-C jest dziwny ;)

  7. Tomek Says:

    Co do kosztów … wiem że Ty już ten koszt poniosłeś ale gwoli ścisłości warto dodać, że w przypadku iPhone do rozpoczęcia pracy potrzebny jest sprzęt i OS ze stajni Apple. Warunek wymagany jakby nie patrzeć.

    Co do kosztów wejścia do developmentu w przypadku WinMo można je obniżyć:
    http://www.codeproject.com/KB/mobile/WiMoSansVS.aspx

    Pytanie jak takie podejście wpłynie na produktywność ewentualną

  8. vermin Says:

    nie wiem jak pozostałe (znaczy znam symbiana i pomimo posiadania stada wynalazków HTC to nokii 95 nie pozbęde się za nic), ale windows marketplace ssie. ssie totalnie i nie napisałbym tam żadnej aplikacji. Rozwala mnie ograniczenia związane z rynkiem – za każdy z nich płaci się $$ – czyli wiadomo, że dla PL aplikacji jest tyle co nic. Nie mówiąc o łatwosci poruszania się po marketplace np. na 10 aplikacji dwa facebooki i nie wiadomo który jest dobry – ale jeden trzeba tuż po instalacji… upgradować. Nie wiem kto odpowiada za ten produkt (marketplace) na PL, ale już nie powinien pracować w M$.
    Nawet wyciskające $ z ludzi Sony uznało, że skoro nie ma w PL sensu stawiać marketplace, to przenieśmy polaków na najbliższy sensownie wyposażony rynek z którego coś qmają (UK).

  9. Michał Says:

    Zdaje się więc, że w Waszych ocenach Android byłby lepszym wyborem niż inne platformy.

    @Roko – Samsung oferuje trzy platformy: Symbian, Windows Mobile, Java i Bada (więcej tutaj: http://innovator.samsungmobile.com/). Którą platformę masz na myśli?

    @Tomek: koszt, jaki poniosłem w przypadku iPhone jest podobny do wydatków na inne platformy – Windows, Symbian czy Android. Jakiś hardware do testów mieć trzeba.

  10. Michał Says:

    Dość ciekawie odpowiedział mój znajomy (http://sakowicz.info/):
    “Wg. mnie to zależy od odbiorcy dla jakiego aplikacja jest skierowana. Jeśli jest to odbiorca indywidualny wybieramy IPhone bądź Android. Windows Mobile raczej odpada gdyż system ma za mały ‘cool factor’ i posiada dość mały rynek urzytkowników indywidualnych. Inaczej ma się sprawa gdy piszemy aplikację biznesową, tutaj nie liczy się koszt pojedyńczego urządzenia a raczej wdrożenia aplikacji w firmie i późniejszego utrzymania aplikacji – tutaj bez sprzecznie wygrywa Windows Mobile i .NET Compact Framework.”

  11. zen Says:

    Ortografy też cytowane ?;)

  12. Michał Says:

    @zen: ctrl-c, ctrl-v to i ortografy się przeniosą


Comments are closed.