První krůčky s Google Android

Jiří Týř 2. 2. 2009

Je to již nějaký ten pátek, co se začala vyvíjet otevřená platforma pro mobilní zařízení známá jako Android. Jako příznivec této platformy jsem se rozhodl sepsat krátký seriál, ve kterém stručně shrnu dění kolem Androidu a podělím se s vámi o dojmy a zkušenosti z používání této platformy.

K tématu dále čtěte:

Zrození Androida

Společnost Google Inc., známá zejména jako provozovatel nejznámějšího internetového vyhledávače, získává nové technologie mimo jiné také skupováním jiných společností. Příkladem může být akvizice video serveru YouTube na sklonku roku 2006. Stejně jako YouTube, tak i základ platformy Android byl získán akvizicí, a to přesněji akvizicí společnosti Android Inc. v polovině roku 2005.

Poprvé se však Android dostal do povědomí až koncem roku 2007, kdy bylo ohlášeno založení Open Handset Alliance (OHA), jejímž cílem bylo vytvořit otevřenou platformu pro mobilní zařízení. Tato aliance je složena ze členů předních poskytovatelů mobilních služeb (T-Mobile, Vodafone, Telefonica, …), výrobců mobilních zařízení (Motorola, Sony Ericsson, ASUS, HTC, …), výrobců software (Google, eBay, …) a výrobců polovodičových součástek (Intel, NVIDIA, Texas Instruments, …).

Budiž SDK

Krátce po založení OHA byla k mání i první verze SDK (Software Development Kit). Aby Google přilákal tvůrce aplikací, vyhlásil soutěž o 10 000 000 USD pro tvůrce aplikací pro platformu Android. V prvním kole bylo rozděleno 5 000 000 USD mezi tvůrce 50 nejlepších aplikací. Druhá polovina odměny na své majitele čeká v právě probíhajícím druhém kole. Google byl průběžně kritizován ze strany tvůrců aplikací za uzavřený vývoj a omezený přístup k nejnovější verzi SDK. Koncem minulého roku se tento postoj obrátil k lepšímu a Google zveřejnil zdrojové kódy celé platformy. Ačkoliv jsou zdrojové kódy veřejně dostupné, je nutno podotknout, že SDK není úplně tak klasickým open-source projektem. Celé SDK podléhá licenci, která s ním zakazuje dělat téměř cokoliv jiného než ho používat pro vývoj aplikací pro Android. Na druhou stranu se Google v této licenci zavazuje, že až bude SDK ve vyvinutější podobě, uvolní většinu částí pod open source licencí Apache v2.0.

Aktuální verze SDK je Android 1.0 SDK, Release 2. Pokud ji vaše distribuce neposkytuje jako balíček, můžete ji stáhnout a nainstalovat například takto:

$ wget http://dl.google.com/android/android-sdk-linux_x86-1.0_r2.zip
$ unzip ./android-sdk-linux_x86-1.0_r2.zip

Tím nám vznikne adresář obsahující samotné SDK v podobě souboru android.jar, dále pak podadresář docs s dokumentací, podadresář samples s ukázkami programů a nakonec i podadresář tools obsahující důležité nástroje pro práci s Androidem.

Virtuální telefon s Androidem

Protože v době zveřejnění první verze SDK nebylo dostupné žádné zařízení, které by Android podporovalo, byl pro účely testování vytvořen emulátor. Tento emulátor je standardní součástí SDK a skutečné zařízení se v něm emuluje pomocí QEMU. Emulátor je umístěn ve výše zmíněném podadresáři tools a spouští se zcela jednoduše pomocí příkazu emulator. K tomuto příkazu můžeme připojit velké množství voleb, kterými lze emulátor nastavovat. Mezi tyto volby patří i možnost nastavení cesty k vlastnímu obrazu systému, kterým nám umožní si vyzkoušet například poslední vývojovou verzi Androida. Pokud příkaz emulator spustíte bez parametrů, načtou se standardní obrazy systému nacházející se v adresáři tools/lib/images.

Pro rozumnou práci s emulátorem je potřeba vytvořit obraz SD karty, na který se ukládají data jako jsou fotografie, které si můžeme vyfotit pomocí vestavěného fotoaparátu, nebo písničky, které si můžete přehrát v nainstalovaném přehrávači. Program pro tvorbu takového obrazu je také součástí SDK. Vytvoření 512 MB velké SD karty a následné spuštění emulátoru může vypadat například následovně:

$ cd tools
$ ./mksdcard 512M ~/mysdcard1.img
$ ./emulator -sdcard ~/mysdcard1.img -audio alsa
Android emulátor

Komunikace s Androidem

Abychom mohli skutečně ocenit dovednosti emulátoru, můžeme si na naší virtuální SD kartu nahrát i nějaký ten multimediální obsah. Pokud jej nechceme stahovat přímo z Internetu, může nám k tomu posloužit aplikace Android Debug Bridge, spouštěná pomocí příkazu adb. Tato aplikace nám umožňuje s běžícím Androidem provádět mnoho věcí. Dokáže kopírovat soubory na i z Androida, umožňuje instalovat i odinstalovávat aplikace, monitorovat běh systému a dokáže se i dokonce k Androidu připojit a spustit na něm lokalní shell. Pokud tedy chceme do Androida nahrát nějaký soubor, měli bychom ho nahrát na naši virtuální SD kartu, která je na Androidu přimountována k adresáři /sdcard. Pro lepší roztřídění obsahu si můžeme vytvořit i odpovídající adresářovou strukturu:

$ cd tools
$ ./adb shell mkdir /sdcard/pictures
$ ./adb push ~/mypicture.png /sdcard/pictures
$ ./adb shell mkdir /sdcard/music
$ ./adb push ~/mysong.mp3 /sdcard/music
Android emulátor obrázky
Android emulátor hudba

Emulátoru zatím nedisponuje aplikací pro instalaci dalších programů. Na skutečném přístroji s Androidem k tomuto účelu slouží aplikace Market, jejíž zdrojové kódy zatím nebyly uvolněny. Proto pokud chcete na emulátoru vyzkoušet nějakou další aplikaci, musíte si ji stáhnout z Internetu. Jedním takovým serverem poskytujícím aplikace pro Android přes Internet je server SlideMe. Po stažení nějaké aplikace si ji můžeme do Androida nainstalovat pomocí adb takto:

$ ./adb install Application.apk

Ihned po instalaci by se nám aplikace měla objevit v seznamu aplikací, odkud ji můžeme spustit nebo přesunout na plochu.

V adresáři tools se nacházejí i další nástroje pro práci s Androidem, jejichž popis můžete nalézt na Google Code.

Příště

Tento díl byl jen letmým pohledem na dění kolem Androidu s jednoduchou ukázkou spuštění emulátoru a komunikace s ním. V příštím díle se můžete těšit na představení skutečného a prozatím jediného mobilního telefonu běžící na platformě Android označovaným jako T-Mobile G1 alias Android Dev Phone 1.

Android telefon
Našli jste v článku chybu?
Lupa.cz: Pokémon GO není jediná rozšířená realita. Co dál?

Pokémon GO není jediná rozšířená realita. Co dál?

Vitalia.cz: Bio vejce nepoznají ani veterináři

Bio vejce nepoznají ani veterináři

120na80.cz: Tipy pro odvodnění organismu

Tipy pro odvodnění organismu

Podnikatel.cz: Selhala pokladna k EET. Kdo zaplatí pokutu?

Selhala pokladna k EET. Kdo zaplatí pokutu?

Podnikatel.cz: Italské těstoviny nebyly k mání, tak je začal vyrábět

Italské těstoviny nebyly k mání, tak je začal vyrábět

Lupa.cz: eIDAS: Nepřehnali jsme to s výjimkami?

eIDAS: Nepřehnali jsme to s výjimkami?

Měšec.cz: Co s reklamací, když e-shop krachuje?

Co s reklamací, když e-shop krachuje?

Podnikatel.cz: Prodej na Alibabě? Malí hráči utřou nos

Prodej na Alibabě? Malí hráči utřou nos

Měšec.cz: Do ostravské MHD bez jízdenky. Stačí vaše karta

Do ostravské MHD bez jízdenky. Stačí vaše karta

DigiZone.cz: Oživení ekonomiky by mělo navýšit reklamu

Oživení ekonomiky by mělo navýšit reklamu

Lupa.cz: IT scéna po brexitu: přijde exodus vývojářů?

IT scéna po brexitu: přijde exodus vývojářů?

Podnikatel.cz: Od baletu k požární ochraně. A jiné rarity

Od baletu k požární ochraně. A jiné rarity

Měšec.cz: Investice do drahých kovů - znáte základní chyby?

Investice do drahých kovů - znáte základní chyby?

DigiZone.cz: Sázka na e-sporty stanici Prima vychází

Sázka na e-sporty stanici Prima vychází

Měšec.cz: Se stavebkem k soudu už (většinou) nemusíte

Se stavebkem k soudu už (většinou) nemusíte

Měšec.cz: Platíme NFC mobilem. Konečně to funguje!

Platíme NFC mobilem. Konečně to funguje!

DigiZone.cz: Samsung uvolnil nástroj pro Tizen

Samsung uvolnil nástroj pro Tizen

Vitalia.cz: Taky je nosíte? Barefoot není pro každého

Taky je nosíte? Barefoot není pro každého

Podnikatel.cz: Za červen to zabalila více jak stovka firem

Za červen to zabalila více jak stovka firem

DigiZone.cz: Skylink o půlnoci vypnul 12 525

Skylink o půlnoci vypnul 12 525