Bądź: Wyszukaj na stronie z użyciem Google
reklama:

wtorek, 18 maja 2010

Jak wygląda proces tworzenia aplikacji dla Androida - wywiad z Marcinem Świerczyńskim

Autor: , 09:00, wtorek, 18 maja 2010


Ostatnio miałem przyjemność rozmawiać z Marcinem Świerczyńskim, który jest między innymi autorem aplikacji AutoResponder na Androida. Zadałem mu kilka pytań związanych z tworzeniem programów na najpopularniejszą obecnie platformę Google. Zapraszam wszystkich zainteresowanych.

1. Jak wygląda pokrótce proces certyfikacji aplikacji dla Androida. Czy jest płatny? Ile trzeba czekać na dodanie aplikacji do Android Marketu.

Po przygotowaniu paczki z aplikacją (.apk) należy założyć konto developerskie w Markecie. Proces ten jest płatny (25 USD w chwili, gdy to robiłem, tzn. ok. 2 miesiące temu), jednak jest to opłata jednorazowa. Oczywiście potrzebne jest konto Google, w szczególności Google Checkout. Z tego co wiem na takim koncie można umieszczać wiele aplikacji bez dodatkowych opłat. Po założeniu konta, możemy załadować nasz plik .apk okraszony opisem i max. 2 screenami. Przypisujemy też program do kategorii, które notabene są zbyt ogólne. Program pojawia się w Markecie po kilku chwilach od kliknięcia przycisku Publish, więc wykluczam czynnik ludzki podczas weryfikacji. Być może przepuszczany jest przez jakiegoś antywirusa?

2. Wiem, że Android preferuje aplikacje w Javie. Co jeśli chodzi o interfejs i na przykład inne języki takie jak C++. Czy można wygodnie tworzyć aplikacje spod Linuksa? Jeśli tak to z użyciem jakich narzędzi.

Aplikacje na Androida pisze się w Javie. Możliwe jest wykorzystanie tzw. Native Development Kit, dzięki któremu uruchomimy kod natywny (tzn. w C/C++) w środowisku Android. NDK można używać od wersji 1.5 Androida. Jest to przydatne, jeśli chcemy tworzyć aplikację, której proces(y) obciążają mocno procesor, ale nie alokują dużo pamięci.

Kod można tworzyć na każdej platformie. Google udostępnia świetną wtyczkę (wyposażoną m.in. w emulator) do środowiska Eclipse, które działa zarówno pod Windows, Linuxem, jak i MacOS. Dostępna jest także wersja SDK dla Linuxa. AutoResponder powstaje na Ubuntu.

3. Czy tworząc aplikacje dla Androida bardzo istotna jest wersja docelowego systemu? Czy łatwo przerobić narzędzie z Androida 1.5 na 2.0?

Fragmentacja marketu (finalnie – aplikacji) jest jednym z największych problemów półświatka Androida. Z jednej strony możliwe jest zbudowania aplikacji, która działa na wielu wersjach systemu – AutoResponder działa od wersji 1.5 wzwyż. Z drugiej jednak strony niektóre elementy API już są oznaczone jako przestarzałe (deprecated). Można zatem spodziewać się, że wyjdą z użycia w kolejnej wersji. Co wtedy? Być może trzeba będzie budować różne wersje aplikacji dla różnych wersji systemu. Nie wiem jak daleko będzie sięgać kompatybilność wsteczna.

Co więcej – wersja systemu nie gwarantuje poprawności działania aplikacji. Wiele zależy od modelu telefonu, jego konfiguracji i innych zainstalowanych aplikacji. To jednak nie jest już bolączka Androida jako takiego.

4. Jak wygląda zgodność z urządzeniami podczas certyfikacji programu. Czy aby znaleźć się w Android Market narzędzie musi działać na wszystkich urządzeniach?

To developer bierze odpowiedzialność za swoją aplikację. W konfiguracji aplikacji ustala się minimalną, zalecaną i maksymalną wersję systemu, na której działa aplikacja. Ostatni parametr jest niezalecany, ponieważ teoretycznie kolejne wersje platformy zapewniać będą kompatybilność wsteczną. W każdym razie aplikacja będzie prezentowana w Markecie, o ile wersja systemu, z którego przeglądamy Market będzie mieściła się w zadanym przedziale.

Wydaje mi się, że zapewnienie działania aplikacji na wszystkich urządzeniach byłoby trudne do osiągnięcia. W tym celu należałoby przetestować narzędzie na ogromnej liczbie konfiguracji (ilość modeli telefonów *ilość wersji systemów na dany model), co jest mało realne z wiadomego powodu. Możliwe jest natomiast poproszenie o przetestowanie aplikacji na grupach dyskusyjnych dla developerów. Daje to pewien obraz sytuacji.

Podsumowując – działanie aplikacji w tym kontekście nie jest w żaden sposób weryfikowane przez Google.
blog comments powered by Disqus

Prześlij komentarz


Popularne posty

Etykiety