Jednym z atutów platformy Android w porównaniu do iOS jest to, że została ona oparta o Open Source. Taki stan rzeczy znacznie ułatwia tworzenie własnych aplikacji oraz rozpowszechnianie ich bez konieczności przechodzenia długiego procesu zatwierdzania.
Jeśli tylko posiadasz zainstalowane odpowiednie oprogramowanie na swoim PC, możesz budować aplikacje na Androida bez żadnych przeszkód. Możesz nawet wykonywać jej testy na emulatorze Androida. Dzięki temu będziesz wiedział, jak program będzie się zachowywał na smartfonie.
Istnieją dwie techniki tworzenia androidowych aplikacji na komputerze. Pierwsza z nich wykorzystuje Android Software Development Kit (SDK). Pozwala ona na pisanie surowego kodu i pomaga uruchomić program w środowisku Androida. Druga metoda korzysta z narzędzia Google Labs – App Inventor, które póki co jest w wersji beta.
App Inventor pozwala na tworzenie aplikacji na Androida przy pomocy techniki drag-and-drop. Jest to próba umożliwienia budowania programów osobom, które nie znają żadnego języka programowania. Niemniej jednak sposób ten nie jest zalecany w firmach, które zawodowo zajmują się tworzeniem aplikacji.
Przygotowanie do pracy
W poniższym artykule założymy, że chcesz stworzyć program na Androida przy pomocy tej pierwszej metody, która generalnie daje większe możliwości. Postaramy się stworzyć prostą aplikację ?Witaj świecie?. Jeśli natomiast wolisz korzystać z graficznego środowiska, to omówimy App Inventor w kolejnym tutorialu. Programy na Androida pisane są w Javie, więc będziesz potrzebował pakietu Java na swoim komputerze. Będziesz również musiał zintegrować środowisko programistyczne (IDE) aby móc pisać i testować kod.
Przygotujmy zatem komputer do pracy z Android SDK. Zacznij od zainstalowania Java Development Kit (JDK) dla Twojej wersji Windowsa.
Musisz także zainstalować Eclipse IDE dla programistów Java (Eclipse IDE for Java Developers). Z zainstalowanym i uruchomionym Eclipse oraz JDK, możesz ściągnąć Android SDK. Wypakuj ten plik w jakimś bezpiecznym miejscu na dysku twardym i zapamiętaj gdzie to zrobiłeś.
Następnie w Eclipse musimy dodać Android Development Tools. Aby to zrobić wybieramy 'Help > Install new software’. Następnie przechodzimy do 'Work with’ oraz wpisujemy https://dl-ssl.google.com/android/eclipse, a na końcu klikamy 'Add’. W okienku niżej zaznaczamy 'Development tools’ i klikamy 'Next’. Następnie akceptujemy warunki licencji, ponownie wciskamy 'Next’ i restartujemy komputer. Po tym kroku włączamy Eclipse i postępujemy zgodnie z instrukcjami wyświetlanymi na ekranie.
Platforma Android
Teraz, gdy ustawiłeś już środowisko programistyczne, musisz zamontować przynajmniej jedną platformę Android. Możesz to wykonać w Android SDK Manager, które uruchomić można w Eclipse, jeśli ustawiłeś cały system prawidłowo.
W Eclipse wybierz 'Window > Android SDK Manager’. Poczekaj aż załaduje się lista dostępnych pakietów. Zaznacz te, które chcesz zainstalować. Najważniejsze jest, aby zainstalować najnowszą wersję platformy Android. Starszych wersji będziesz potrzebował, gdy masz w planach wydanie swojej aplikacji na różne wersje Androida i niezbędne będzie przetestowanie na nich programu. Na tym etapie możesz nie instalować Google API oraz sterownika USB. Jeśli będziesz ich potrzebował, to zawsze możesz wrócić do tego punktu.
Teraz wystarczy kliknąć 'Install selected’ i poczekać, aż wszystkie komponenty się ściągną. Po instalacji pakietów zostaną one dodane do istniejących folderów Android SDK.
Wirtualna maszyna Android
Gdy ściągniesz już najnowszą platformę Android, musisz ustawić wirtualną maszynę (AVD). W tym celu wybierz 'Window > AVD manager’. W nowo otwartym oknie kliknij 'New’ i wprowadź nazwę dla swojej wirtualnej maszyny. Wybierz również platformę Android jako cel (Target). Teraz wystarczy tylko kliknąć 'Create AVD’.
Jeśli będziesz chciał testować aplikację na różnych wersjach Androida, będziesz musiał utworzyć nową wirtualną maszynę dla każdej z tych wersji. W tym miejscu można także określić inne parametry jak na przykład rozmiar katy SD.
W naszym przypadku możesz poprzestać na domyślnych ustawieniach. Gdy już to zrobisz, możesz zamknąć AVD Manager.
Tworzenie i emulowanie aplikacji na Androida
Zakładając, że przeszedłeś pomyślnie przez wszystkie powyższe kroki, możesz stworzyć nowy projekt. W Eclipse wybierz 'File > New > Project’. W oknie New Project wybierz folder 'Android’, a następnie 'Android project’. Kliknij 'Next’. Otworzy się nowe okno ze szczegółami projektu.
Na początek stworzymy prostą aplikację 'Witaj świecie?, która będzie jedynie wyświetlać jakiś tekst, gdy zostanie uruchomiona. W polu nazywającym się 'Project name’ wpisz HelloAndroid. W 'Application name’ wpiszmy ?Hello, Android?, a w 'Package name’ wprowadźmy ?com.example.helloandroid?. Natomiast w 'CreateActivity’ wpisz ?HelloAndroid?. Następnie kliknij 'Finish’.
Nazwa projektu jest również nazwą folderu, w którym znajdują się jego pliki. Eclipse samodzielnie go utworzy. Zakładając, że zaakceptowałeś domyślny obszar roboczy (workspace), czyli C:\Users\[użytkownik]\workspace, to wyżej wspomniany folder znajdziesz w C:\Users\[użytkownik]\workspace\HelloAndroid.
Gdy odszukasz ten folder, to zobaczysz kilka podfolderów i plików, które są częścią twojego projektu.
Nazwa aplikacji to jednocześnie jej tytuł. Będzie on wyświetlany w urządzeniu opartym o system Android. Pole to można swobodnie zmieniać. Natomiast jeśli chodzi o nazwę pakietu (package name), to trzeba być nieco bardziej ostrożnym.
Jest to przestrzeń nazw dla pakietu, w którym znajduje się kod źródłowy. Java wymaga przestrzegania odpowiedniego nazewnictwa pakietów. W naszym przykładzie użyliśmy 'com.example’, które jest zarezerwowane dla przykładów tego typu.
Jeśli pozycja 'Use default location’ została zaznaczona, twój projekt zostanie zapisany w obszarze roboczym. Możesz zmienić lokalizację projektu, jeśli chcesz, aby był on przechowywany w innym miejscu. W 'Build target’ wybieramy platformę dla naszej aplikacji. Jest to jednocześnie najniższa wersja Androida, na której działać będzie nasz program.
Jeśli stworzysz aplikację dla wcześniejszej wersji Androida, to powinna się ona uruchomić również w starszej wersji. Natomiast w odwrotnej sytuacji może to już nie zadziałać. W naszym przypadku nie ma to znaczenia, dopóki uruchamiamy program tylko na emulatorze. Gdy będziemy chcieli wydać program, to na smartfonach ze starszym Androidem może on nie działać.
I na koniec tego punktu warto powiedzieć, że istnieje możliwość utworzenia projektu z jakiegoś istniejącego już przykładu. Wówczas będziemy tylko modyfikować kod. Będzie to dla Ciebie interesująca opcja, gdy przejdziesz do bardziej zaawansowanych wyzwań programistycznych.
Modyfikacja kodu
Teraz przejdźmy do podglądu naszego projektu w panelu ?Package Explorer?, który znajduje się po lewej stronie okna Eclipse. Kliknij podwójnie na 'HelloAndroid’, następnie na 'src’ oraz 'com.example.helloandroid’. Dwuklik na 'HelloAndroid.java’ pozwoli nam na zobaczenie kodu, który do tej pory został automatycznie wygenerowany. W głównym panelu programu powinieneś zobaczyć:
package com.example.helloandroid;
import android.app.Activity;
import android.os.Bundle;
public class HelloAndroid extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
Jeśli nie możesz zobaczyć części kodu, spróbuj kliknąć na małe plusiki znajdujące się po lewej stronie głównego okna programu. Spowoduje to rozwinięcie schowanej części kodu. Aplikacja w takim stanie jak obecnie nie robi kompletnie nic. Aby program był choć trochę bardziej funkcjonalny musimy dodać obiekt, który będzie przechowywał Twój tekst.
Mając taki kod, jak zaprezentowany powyżej, pod linią 'import android. os.Bundle;’ dodaj:
import android.widget.TextView;
Ponadto, powyżej dwiema klamrami zamykającymi (na końcu kodu) dodaj to:
TextView tv = new TextView(this);
tv.setText("Moja pierwsza aplikacja na Androida");
setContentView(tv);
Tekst znajdujący się w cudzysłowie możesz zamienić na co tylko chcesz. Będzie to wiadomość wyświetlana przez nasz program. Sprawdź, czy Twój kod wygląda tak jak ten poniżej (zakładamy, że tekst w cudzysłowie pozostawiłeś bez zmian):
package com.example.helloandroid;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
public class HelloAndroid extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextView tv = new TextView(this);
tv.setText("Moja pierwsza aplikacja na Androida");
setContentView(tv);
}
}
Zapisz zmiany w kodzie. Teraz możesz spróbować uruchomić emulator Androida. W Eclipse wybierz 'Run > Run > Android application’. Emulator zostanie uruchomiony. Może to zająć nawet kilka minut, więc bądź cierpliwy.
Wciśnij przycisk 'Home’ w emulatorze, aby wrócić do głównego okna Androida. Następnie wybierz przycisk 'Applications’, aby zobaczyć listę dostępnych programów. Powinieneś tam znaleźć aplikację 'Hello, Android’. Wybierz ją, aby uruchomić.
Testowanie aplikacji na urządzeniu opartym o Androida
Właśnie uruchomiłeś swoją aplikację w emulatorze. Teraz możesz przetestować ją na prawdziwym urządzeniu. W pierwszej kolejności upewnij się, że sterowniki USB są zainstalowane. W tym celu w Eclipse wybierz 'Window > Android SDK ? i sprawdź, czy w folderze ?Extras? zainstalowany jest ?USB Driver?. Jeśli nie, to go zainstaluj.
Teraz podłącz swój telefon przy pomocy portu USB i zaczekaj, aż Windows rozpozna go. W oknie ?New Hardware? wybierz 'Locate and install drivers’ i pozwól komputerowi na wyszukanie odpowiednich sterowników. Następnie przejdź do folderu 'Android SDK’ i zlokalizuj podfolder ze sterownikami USB. Windows powinien znaleźć je i zainstalować właśnie z tej lokalizacji.
Teraz musisz zadeklarować swoją aplikację jako ?debuggable?. W Eclipse rozwiń w panelu po lewej stronie aplikację HelloAndroid i kliknij dwukrotnie na pliku 'AndroidManifest.xlm’. Przejdź to karty 'Application’ i z listy rozwijanej ?Debuggable? wybierz 'True’. Następnie zapisz projekt.
Przejdź teraz do menu głównego swojego telefonu z Androidem i wybierz 'Applications > Development’. Następnie włącz debugowanie USB. Teraz możesz odłączyć i ponownie podłączyć telefon do PC poprzez USB. Aby sprawdzić, czy SDK widzi Twój telefon, przejdź do folderu 'Tools’ w katalogu 'Android SDK’. Następnie uruchom 'adb.exe’. Twój telefon powinien być widoczny na liście jako 'Device’.
Aby uruchomić aplikację na telefonie wybierz w Eclipse 'Run > Run > Android application?. W kolejnym oknie do wyboru będziesz miał albo emulator, albo telefon. Wybierz oczywiście telefon. Program zostanie uruchomiony.
Tym samym stworzyłeś i uruchomiłeś bardzo prostą aplikację. Można ją włączyć zarówno na emulatorze jak i na prawdziwym telefonie. Możesz zatem zacząć tworzyć jakieś swoje własne programy. Oczywiście znacznie pomoże tutaj znajomość Javy. Warto także wspomnieć, że wiele ciekawych tutoriali znajdziesz na stronie Android Developer Resources.
Tutoriale te zawierają wszelkie niezbędne informacje o tym, jak tworzyć programy na Androida. Znajdziesz tam także wiele przykładowych kodów źródłowych. Można je dowolnie modyfikować i dostosowywać do swoich potrzeb. Więcej przykładów znajdziesz również na Apps-for-Android.