2. díl - Android programování - Vývojové prostředí

Java Android Android programování - Vývojové prostředí

V minulém tutoriálu o torbě Android aplikací v Javě jsme si udělali úvod do platformy Android. V dnešním dílu naší série si ukážeme, jak nainstalovat vývojové prostředí a alespoň částečně si popíšeme GUI Android Studia.

Pokud chceme programovat pro Android, máme k dispozici mnoho vývojových prostředí. Eclipse, NetBeans, Intellij IDEA a Android Studio. Mezi nejrozšířenější vývojové prostředí patří Android Studio a Eclipse. Doporučuji Android Studio, viz následující kapitoly. Popíšeme si instalaci obou prostředí, vy si jedno vyberte.

1 Instalace Eclipse

Stáhneme na adrese: http://www.eclipse.org/downloads/

Jedná se o balík Eclipse IDE for Java Developers. Je v .zip, stačí rozbalit na libovolné místo v počítači.

Java Development Kit

JDK

Potřebujeme balíček JDK, můžeme ho stáhnout z oficiálních stránek Oracle, najdeme tam balíček pro OS Windows a Linux. http://www.oracle.com/…-138363.html Stačí se řídit pokyny, proklikání průvodcem není žádný problém.

Software Development Kit

Tento balíček (SDK) obsahuje nástroje potřebné k vytváření a testování aplikací. Stáhnout ho můžeme na následující adrese: http://developer.android.com/sdk/index.html

Soubor zip extrahujeme opět na libovolné místo na disku. Spustíme SDK Manager, z adresáře Tools zatrhneme Android SDK Tools, Android SDK Build-tools podle našeho výběru a Android SDK Platforms-tools. Dále vybereme verzi androidu, na které chceme aplikace vyvíjet a testovat.

Klikneme na Install, vyskočí tabulka, kde je třeba potvrdit, že souhlasíme s licenčními podmínkami.

Android Development Tools

Nyní máme vše potřebné. Stačí vše poskládat dohromady. K tomu slouží ADT. Je to plugin pro Eclipse.

  • Přímo v Eclipse klikneme na nabídku Help - Install New Software - Add,
  • jako adresu repositry dáme: https://dl-ssl.google.com/…oid/eclipse/,
  • ve spodním okně se objeví řádek Developer Tools, ten označíme pro stažení,
  • nakonec musíme nakonfigurovat plugin ADT, v Eclipse dáme nabídku Windows - Preferences - Android a do políčka na pravé straně zadáme cestu ke složce s rozbaleným SDK.

2. Instalace Android Studia

Instalace Android Studia (dále jen AS) je mnohem jednodušší. Stáhneme ho zde: https://developer.android.com/…/studio.html

Java Development Kit

Stejný postup jako u Eclipse s tím rozdílem, že bychom měli přidat systémovou proměnnou. U Windows Ovládací panely\Systém a zabezpečení\Sys­tém\Upřesnit nastavení systému dále Upřesnit a ve spodní části Proměnné prostředí. Zde vytvoříme novou systémovou proměnnou JAVA_HOME s cestou k vašemu JDK.

Software Development Kit

Software development kit

Klikneme na označený obrázek a stáhneme z adresáře Tools Android SDK Tools, Android SDK Build-tools podle našeho výběru a Android SDK Platforms-tools. Dále vybereme verzi Androidu, na které chceme aplikace vyvíjet a testovat a vše potvrdíme. Dále bychom měli stáhnout Android Support Repository a Android Support Library, pokud budeme chtít testovat aplikace na zařízení jako je Nexus x, doporučuji stáhnout i Google USB Driver. Není na škodu stáhnout vše, ovšem jedná se o balíček poměrně obrovských rozměrů.

Emulátor

Jako emulátor můžeme použít aplikaci, kterou stáhneme zde: http://www.genymotion.com/

Jedná se o nejlepší emulátor, který můžeme sehnat. Obsahuje dokonce i předem specifikované reálné zařízení. Je zhruba 10x svižnější než klasické emulátory, které jsou většinou součástí různých vývojových prostředí. Stačí stáhnout a nainstalovat.

Dokonce máme možnost propojit Genymotion s AS. Klikneme na File, Settings, najdeme položku Plugins, napíšeme „Genymotion“ a potom co najdeme zmíněný plugin ho nainstalujeme. AS se poté sám restartuje.

Nové virtuální zařízení vytvoříme tak, že dáme v nabídce Genymotion Add a proklikáme se jednoduchým průvodcem. Později si ukážeme, jak testovat aplikaci přímo na reálném zařízení přes USB kabel.

3. Hodnocení obou vývojových prostředí

Dle mých osobních zkušeností jednoznačně vítězí Android Studio. Je mnohem svižnější, vykazuje menší chybovost, práce je v něm obecně pohodlnější a je mnohem jednodušší na instalaci. Kvůli všem kladům důrazně doporučuji začít vytvářet aplikace právě v Android Studiu.

4. GUI Android Studia

4.1 Struktura projektu

Nyní se podíváme na důležité položky ve struktuře našeho projektu. Na obrázku je vidět struktura, na které je nastaveno "Project". Pokud nám stačí zjednodušená verze, nad strukturou přepneme do "Android".

Rozbalená struktura Android aplikace

Složka app se dále větví na:

  • build, pokaždé když naši aplikaci spustíme, Android Studio si samo do této složky uloží potřebné předkompilované části kódů. Nás tedy tato složka nemusí vůbec zajímat.
  • libs, sem se ukládají knihovny naší aplikace, pokud bychom chtěli přidat nějakou funkčnost našemu projektu.
  • src, zde nás zajímá main.

Main se dále větví na java a res.

  • java, Java kód pro naše activity.
  • res, resources, v této složce se nachází obrázky ve složkách:
  • drawable-hdpi
  • drawable-mdpi
  • drawable-xhdpi
  • drawable-xxhdpi

Defaultní složky pro obrázky, jsou seřazeny podle kvality vzestupně. Pokud bude daný obrázek pro zařízení s fullHD displejem, použijeme nejkvalitnější složku xxhdpi, naopak pokud to bude obrázek na zařízení například s 480x320, zvolíme nejméně kvalitní složku hdpi.

V případě jednodušších aplikací doporučuji přidat složku drawable, tato složka nahradí všechny drawable-xxxx složky.

  • Layout, zde se nachází xml soubory, ve kterých definujeme, jak se má co vykreslit.
  • Values, zde se nachází proměnné naší aplikace, týkající se textů popř. barev atd.

V nově vytvořené aplikaci, tzv. Hello world aplikaci, se nachází v souboru: activity_jméno_ac­tivity.xml tento řádek:

android:text="@string/hello_world"
  • @string - nás odkazuje na strings.xml
  • hello_world - jméno stringu, jehož hodnotu si aplikace vytáhne z proměnné uložené v souboru strings.xml. Pokud se podíváme do tohoto souboru, najdeme zde řádek:
<string name="hello_world">Hello world!</string>

hodnota je tedy "Hello world!";

Tento systém je při programování mobilních aplikací velmi důležitý. Toto pravidlo známe i z programování pro klasické počítače.

Jde o to, abychom měli jednu proměnnou a tu volali například 100x. Pokud totiž dojde ke změně hodnoty, stačí ji přepsat na jednom místě. Kdyby to bylo obráceně, museli bychom 100x přepsat text.

Další výhoda, která nám jakožto vývojářům aplikací hraje do karet, je snadné vytvoření vícejazyčné aplikace.

Stačí přidat složku values-cs a do ní překopírovat strings.xml a přepsat jednotlivé názvy. Aplikace při spuštění na zařízení, které je v CZ jazyce, potom bude tahat hodnoty pro jednotlivé stringy z právě nově vytvořeného souboru.

  • Manifest

Na konec jsem si nechal nejdůležitější soubor v každé struktuře aplikace a to Manifest.

AndroidManifest.xml

Manifest se musí nacházet v kořenovém adresáři každé aplikace. Obsahuje informace o naší aplikaci, které předá Androidu předtím, než se spustí kód aplikace.

Nachází se zde jednotlivé activity a jejich nastavení, definují se zde práva aplikace a její nastavení jako je ikona atd.

4.2 Android DDMS

Dalvik Debug Monitor Service

Dalvik Debug Monitor Service je GUI aplikace, kterou najdeme ve spodní části Android studia (je součástí SDK).

Vede podrobné výpisy o všem, co jako vývojáři potřebujeme.

Debugging a boj s errory

Pokud se něco pokazí, najdeme podrobný výpis v záložce Android. Můžeme zde nastavovat spousty filtrů, například jaké activity chceme vypsat, z jaké aplikace, jaký typ hlášek vypsat atd. Pomocí tohoto nástroje je snadné najít, co přesně se pokazilo.

TODO

Pokud do naší aplikace někam přidáme komentář

"//TODO Nějaký text"

tak můžeme velmi jednoduše vypsat seznam všech TODO a to tak, že klikneme na: View -> Tool windows -> TODO Používat tuto funkci doporučuji, zejména u větších projektů.

Debugging

V Android Studiu je poměrně jednoduchý postup debuggingu. Pokud se stane, že dojde k pádu aplikace, nejdříve se podíváme do Android DDMS záložka Android a projdeme si log. Zjistíme na jakém řádku je chyba. AS (alespoň v současné verzi) nemá automaticky zobrazená čísla řádků. Zobrazíme je pravým kliknutím na prostor na levé straně od okna, kam píšeme kód.

Zobrazení čísel řádků v Android Studio

Ne vždy ale chybu hned vidíme. Můžeme si nastavit debug point na řádcích podle potřeby. (Kliknutím vedle čísla řádku) Potom můžeme spustit aplikaci v debug módu (Shift+F9 nebo klik na "zeleného broučka" v horním panelu).

Aplikace se zastaví v bodě, kam jsme umístili debug point a automaticky nás přesune v DDMS do Debugger módu. Zde vidíme přehled o všech proměnných a můžeme přeskočit k dalšímu debug pointu pomocí zelené šipky na levé straně.

Debug mód v Android Studio

Samozřejmě že pro správný debugging musíme mít zapnuté emulované zařízení s Androidem přímo na PC, popř. musíme mít připojen mobil s Androidem a nastaveným ladění přes USB, viz následující kapitoly.


 

  Aktivity (1)

Článek pro vás napsal Jiří Hlavík
Avatar
Autor se věnuje programování v C# a vývoji aplikací pro platformu Android a dalším věcem spojeným s Android OS

Jak se ti líbí článek?
Celkem (11 hlasů) :
4.818184.818184.818184.818184.81818


 



 

 

Komentáře
Zobrazit starší komentáře (6)

Avatar
Radim Novák
Člen
Avatar
Radim Novák:

Umíš mobilní aplikace? Buď u toho! http://www.mitteo.com/cz/career/

Editováno 2.9.2015 18:13
 
Odpovědět  -2 2.9.2015 18:11
Avatar
Jakub Nociar
Člen
Avatar
Jakub Nociar:

Dobrý den, vyskytl se mi problém s SDK, když si tento soubor stáhnu, není to v zipu, nýbrž pouze k instalování (to by zas tak nebyl problém, ale..) když chci tento program nainstalovat, tak musím zadat cestu k java.exe, kterou nevidím ve složce bin při zadávání cesty, ale byť tam je, když se dívám pouze do složky.
Děkuji za odpověď :)

 
Odpovědět 21. února 10:39
Avatar
Odpovídá na Jakub Nociar
Petr Čech (czubehead):

Když vybíráš složku, ty soubory tam prostě vidět nejsou, takže je to tak v pořádku

Odpovědět 21. února 11:31
Why so serious? -Joker
Avatar
Jakub Nociar
Člen
Avatar
Odpovídá na Petr Čech (czubehead)
Jakub Nociar:

Jenze kdyz vyberu pouze slozku, kde se soubor nachazi, tak mi to vyhodi chybu, ze to nechce nsjit java.exe..

 
Odpovědět 22. února 10:26
Avatar
filiptartott
Člen
Avatar
filiptartott:

Sorry neviem si rady, nejak to SDK neviem nájsť na tom linku ktorý tam je napísaný,

 
Odpovědět 24. dubna 17:53
Avatar
Jiří Hlavík
Redaktor
Avatar
Odpovídá na filiptartott
Jiří Hlavík:

Nějakou dobu jsem z časových důvodů na AS nesáhl, novinky sleduji jen tak co se ke mě náhodou dostane, ovšem pokud se nepletu, tak v současné verzi SDK zvlášť stáhnout nejde.
Stačí stáhnou AS a pokud by v něm být neměli tak co bude třeba to dostahuješ přes manager v AS.

 
Odpovědět  +1 24. května 13:47
Avatar
Filip Šohajek
Redaktor
Avatar
 
Odpovědět  +1 24. května 13:55
Avatar
Erik Báča
Člen
Avatar
Erik Báča:

jak mám z těch stránek stáhnout ten emulátor? Vypadá to,že je to placené :/

Odpovědět 14. září 22:18
Když mi dáš mínus, napiš proč!
Avatar
Odpovídá na Erik Báča
Petr Štechmüller:

Ahoj, na genynotion se vykašli a použij to, co nabízí přímo android studio. Od poslední verze ten emulátor výrazně zlepšili a zrychlili.

Odpovědět 15. září 7:32
Pokud spolu kód a komentář nekorespondují, budou patrně oba chybné
Avatar
Jiří Hlavík
Redaktor
Avatar
Jiří Hlavík:

Ahoj Eriku, v dnešní době je opravdu asi zbytečné stahovat genymotion, plně ti postačí emulátor v AS jako takový. Emulátor v AS jsem nedávno zkoušel a opravdu šlape rychleji.

Tak či tak se tento akademický rok vrátím k androidu a tak bych rád konečně překopal tento seriál, uvedl pár nejasností na pravou míru a přepsal "neaktuální" obsah, neboť jak je vidět, vývoj se v tomto odvětví mění takřka raketovým tempem.

 
Odpovědět  +1 15. září 11:46
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 16. Zobrazit vše