Jak zacząć programować na androida

Jak zacząć programować pod androida – krótki poradnik.

Do pisania aplikacji działających w systemie Android potrzeba następujących elementów:

1. Narzędzi

2. Wiedzy

Z narzędziami jest dość prosto – trzeba zainstalować Eclipse z jedną z dostępnych wtyczek.

Eclipse jest do pobrania tutaj: Eclipse Downloads jak nie wiesz którą wersję wybrać wybierz Classic.

Należy również pobrać wtyczkę ADT. Opis jak zainstalować narzędzia jest dostępny tutaj: Building Your First App | Android Developers

Możliwe jest też użycie dowolnego innego IDE pozwalającego na pisanie programów w Java, należy jednak pamiętać, że wiąże się to z trudniejszą konfiguracją, słabszym dostosowaniem do Androida oraz znacznie słabszym wsparciem ze strony społeczności. Jeżeli zaczynasz dopiero pracę z Androidem polecamy wybór Eclipse.

Z wiedzą jest trochę trudniej – instalacja postępuje wolno, musisz jednak zgromadzić następujące elementy:

Znajomość angielskiego – przynajmniej podstawy. Uprzedzając pytania – tak jest to niezbędne. Podczas pisania programów nieraz pokłócisz się z kompilatorem, debugerem itd. – dobrze, żeby były to dyskusje na tematy merytoryczne a nie językowe. Całość dokumentacji z której będziesz korzystał, również jest w tym języku.

Przyzwoita znajomość programowania Java – nie chodzi o wiedzę bardzo wybujałą, jednak na blachę trzeba znać takie zagadnienia jak składnia języka i model obiektowości w Java. Warto też dorzucić do tego znajomość podstawowych klas z JSE. Całość potrzebnej wiedzy jest zawarta w książce „Java2 – Podstawy”

Znajomość specyfiki tworzenia aplikacji dla systemu Android, w szczególności przynajmniej przeczytanie sobie o tym jakie elementy występują w aplikacjach (wszystkie 4) – to nie jest jakoś strasznie rozległa wiedza, chociaż oczywiście wraz z tworzeniem kolejnych programów, będziesz ją w sobie rozwijał

Częste pytania:

Czy mogę pisać dla Androida w języku C++?

Tak – Możliwość pisania aplikacji w C++ pierwotnie była dodatkiem mającym na celu portowanie już istniejących aplikacji i wymagało „owijania” kodu C++ w Java. Obecnie możliwe jest wykonanie całej aplikacji z użyciem C++. Jeżeli interesuje cię ta możliwość poszukaj w Google hasła „Android NDK”

Czy mogę pisać dla androida w języku PHP, Action Script, HTML, C#, Delphi, Brainfuck, Lua, Perl (…)?

Dla niektórych z tych języków istnieją różnego rodzaju narzędzia, pozwalające na ten proceder. Pojawiły się również różnego rodzaju specjalizowane narzędzia (np. do tworzenia gier). Niektóre z nich są wspomniane dalej w tym wątku

Czy w Android Market można sprzedawać aplikacje?

Tak, Polacy mogą sprzedawać aplikacje przez Google Play.

Czy mogę publikować aplikacje w Android Market?

Tak, możesz – utworzenie konta developera w AM to kilka minut i $25 uciekające z karty. Trzeba mieć kartę płatniczą obsługującą płatności w internecie.

Czy mogę umieścić reklamę w aplikacji?

Tak możesz, są 2 sieci reklamowe pozwalające na to – adMob i MobClix. Pierwsza z nich wygląda na bardziej popularną. Rejestracja w obu jest darmowa, wynagrodzenie w obu przypadkach zależy od liczby kliknięć w reklamy wyświetlone przez ciebie. Wartość kliknięcia to od $0.01 do $0.20 i nie masz na to żadnego wpływu. Wypłata w obu przypadkach następuje za pośrednictwem PayPal. Uwaga – pojawiło się znacznie więcej sieci reklamowych, częśc z nich oferuje reklamy inne niż banery.

Czy polecacie jakieś książki / źródła dotyczące programowania?

Nauka Java – „Java 2 Podstawy”, „Thinking in Java”, „Head First: Java”

Dokumentacja android SDK + wskazówki dla developerów – Android Developers

Przykładowe projekty instalowane z SDK. ~\android-sdk-windows\samples\…

Książki dostępne tutaj: CommonsWare(roczna subskrypcja uaktualnień to $40)

Po polsku ukazała się jedna książka Android 2 Tworzenie aplikacji Książka „Android 2. Tworzenie aplikacji” – Sayed Hashimi, Satya Komatineni, Dave MacLean – 9788324627547 — Wydawnictwo Helion, księgarnia helion.pl jakoś bardzo jej nie polecamy, ale nic innego w ojczystym języku nie znajdziesz.

Odpowiedzi na sporo pytań znajdziesz tutaj: Stack Overflow

Dlaczego nikt nie odpowiada na moje pytanie?

Prawdopodobnie zadałeś je w sposób tak mało zrozumiały, że nikt go nie kuma – jak chcesz dostać precyzyjną odpowiedź, to precyzyjnie pytaj. Napisz co chcesz zrobić, co i jak zrobiłeś, i co ci się nie podoba w efekcie który uzyskałeś. Pamiętaj też, że na tym forum pisuje zaledwie kilka wróżek i są na ogół zajęte w innych działach, w związku z tym dla własnego dobra umieść od razu wszystko co jest potrzebne – kod, definicję layoutu, logi DDMS.

Zdarza się też, że problem z którym się zwracasz jest na tyle trywialny, że zdradza twoją kompletną nieznajomość podstaw – posłuchaj rad, które padają i doczytaj / poćwicz to co niezbędne.

Jak połączyć się z zewnętrzną (zdalną) bazą danych

W tym wątku jest opisany problem: http://forum.android.com.pl/f43/zdalny-sqlite-51840/

Jak szybko zainstalować narzędzia?

Najprościej będzie zainstalować MotoDev Studio – jeden krok mniej.

1. Pobieramy i instalujemy JDK (nie SDK) ze stron Oracle Java SE Downloads – wybieramy najnowszą wersję

2. Pobieramy i instalujemy Eclipse – Eclipse – The Eclipse Foundation open source community website.

2a Pobieramy i instalujemy ADT Installing the Eclipse Plugin | Android Developers

3. Po instalacji uruchamiamy Eclipse, szukamy w górnym pasku ikony z androidem (górny, lewy róg), za pomocą formularza pobieramy wszystkie dostępne pakiety – to potrwa kilkanaście minut.

4. Szukamy swojego telefonu z Androidem, kabla USB do niego i sterowników ADB – w części przypadków mogą być te z Google.

5. W telefonie ustawiamy ustawienia > aplikacje > dla programistów > debugowanie USB i podłączamy do komputera. Od wersji Androida 4.2 opcje programistyczne są ukryte – zanim włączysz wejdź w opcje, informacje o systemie i kliknij kilkanaście razy w numer kompilacji

6. Instalujemy nowe urządzenie w systemie, używając pobranych wcześniej sterowników.

Inne narzędzia

http://forum.android.com.pl/f42/narzae-dzia-wspomagajae-ce-pisanie-aplikacji-58019/

7ymek podał następujące informacje dla programujących we Flex:

Adobe Flash Builder Burrito: środowisko oparte na eclipse umożliwiające budowanie aplikacji we Flex’ie/Flashu dla androida. Jeszcze wersja beta ale już bardzo stabilna.

Adobe Flash Builder „Burrito” | cross platform development – Adobe Labs

Necessitas: programowanie aplikacji na androida w Qt:) kompletne środowisko programistyczne oparte na QtCreatorze. wersja alfa także bardziej jako ciekawostka

Bringing Qt applications to Android – a quickstart video

 

Żródło