Vianoce v ITnetwork sú tu! Dobí si teraz kredity a získaj až 80 % extra kreditov na e-learningové kurzy ZADARMO. Zisti viac.
Hľadáme nové posily do ITnetwork tímu. Pozri sa na voľné pozície a pridaj sa k najagilnejšej firme na trhu - Viac informácií.

4. diel - Android programovanie - Spustenie aplikácie (zariadenia / emulátor)

V minulej lekcii, Android programovanie - Android API a štruktúra projektu , sme si vysvetlili čo je to Android API a popísali si štruktúru projektu.

Aby sme spustili Android projekt, potrebujeme vytvoriť buď v emulátora virtuálne zariadenia alebo si nastaviť nejaké reálne zariadení. Oba spôsoby si v dnešnom Android tutoriálu vyskúšame!

Spustenie aplikácie Hello World!

Po vytvorení nového projektu nám Android Studio pripravilo jednu aktivitu s jedným textom "Hello World!". Tento pripravený projekt môžeme i spustiť. Máme hneď dve možnosti, ako projektu vdýchnuť život:

  • Spustením v reálnom zariadení (na vašom telefóne)
  • Spustením v emulátora (na vašom PC)

Najprv si popíšeme kroky potrebné na prípravu daných spôsobov, ďalší postup bude pre obe možnosti rovnaký.

Reálne zariadenie

Čo budeme potrebovať? Okrem zariadení so systémom Android a USB kábla navyše:

  • Povoliť na zariadení vývojárske možnosti
  • Povoliť na zariadenie ladenie USB
  • Nainštalovať USB driver pre ADB (Android Debug Bridge)
  • Po pripojení káblom k počítaču zvoliť režim USB na MTP

Poďme jednotlivé body splniť.

Povolenie vývojárskych možností na zariadení

Od Android 4.2 a novších musíme obrazovku s možnosťami pre vývojárov povoliť, pretože je skrytá. Ak chceme povoliť testovanie aplikácií na danom zariadení, prejdeme do nastavenia telefónu a tam klikneme niekoľkokrát (asi sedemkrát) na položku "Číslo zostavenie". Túto možnosť nájdeme, v závislosti na verzii Androidu konkrétneho zariadenia, na jednom z nasledujúcich miest:

  • Android 9 (API level 28) a novšie: Nastavenia -> Info o telefóne -> Číslo zostavenie
  • Android 8.0.0 (API level 26) a Android 8.1.0 (API level 26): Nastavenia -> O telefóne -> Informácie o softvéri -> Číslo zostavenie
  • Android 7.1 (API level 25) a nižšie: Nastavenia -> Info o telefóne -> Číslo zostavenie

Ukážeme si príklad povolenie vývojárskych možností na reálnom tabletu. Otvorte nastavenia a kliknite na záložku s informáciami o zariadení. Tu nájdite položku Číslo zostavy, na ktorú asi sedemkrát po sebe kliknite:

Základy vývoja Android aplikácií v Jave

Po opakovanom klikanie bude zobrazená správa o úspešnom povolenie vývojárskych možností a v menu nastavenia telefónu sa objaví nová položka Možnosti pre vývojárov:

Základy vývoja Android aplikácií v Jave

Klikneme na novú položku Možnosti pre vývojárov a skontrolujeme, že je zaškrtnutá položka Možnosti pre vývojárov. Ak nie je, zaškrtneme jej:

Základy vývoja Android aplikácií v Jave

Povolenie ladenie USB

Než budeme môcť používať debugger a ďalšie nástroje, musíme povoliť ladenie USB. To umožňuje Android Studiu a ďalším nástrojom SDK rozpoznať naše zariadenie pri pripojení cez USB. Túto možnosť zapneme v ponuke Možnosti vývojárov a nájdeme ju v závislosti na verzii Androidu konkrétneho zariadenia na jednom z nasledujúcich miest:

  • Android 9 (API level 28) a vyššie: Nastavenia -> Systém -> Advanced -> Možnosti pre vývojárov -> Ladenie USB
  • Android 8.0.0 (API level 26) a Android 8.1.0 (API level 26): Nastavenia -> Systém -> Možnosti pre vývojárov -> Ladenie USB
  • Android 7.1 (API level 25) a nižšie: Nastavenie> Možnosti pre vývojárov -> Ladenie USB

Opäť si ukážeme príklad na reálnom tabletu. V rovnakom okne, kde sme zaškrtli položku Možnosti pre vývojárov, zídeme v menu nižšie a nájdeme položku Ladenie USB, ktorú zaškrtneme:

Základy vývoja Android aplikácií v Jave

Potvrdíme nasledujúce dva dialógy a máme všetko pripravené:

Základy vývoja Android aplikácií v Jave Základy vývoja Android aplikácií v Jave

Opísané spôsoby nastavenia ladenia USB a vývojárskych možností sa môžu líšiť podľa výrobcu telefónu, pretože nie na každom telefóne, s rovnakým Androidom je presne rovnaký jeho vzhľad. Nemali by ste však mať vážnejšie problémy danej položky v menu nájsť.

Inštalácia USB driveru pre Android Debug Bridge

Po prvom pripojení reálneho zariadení k počítaču v režime Ladenie USB by malo automaticky dôjsť k stiahnutiu ovládačov a na nastavenie pripojeného zariadenia. Zatiaľ sa mi nestalo, že by som niekedy musel USB driver sťahovať a inštalovať ručne. Nasledujúci pasáž slúži teda len k tomu, keby sa vám tak náhodou nestalo a môžete ju inak preskočiť.

Ak budete vyvíjať v systéme Mac OS X alebo Linux, nemalo by byť, podľa dokumentácie, nutné ovládač USB inštalovať.

Ak budete vyvíjať v systéme Windows, nájdete na oficiálnych stránkach Android Studia tabuľku, ktorá ponúka odkazy na webové stránky niektorých výrobcov hardware, kde si môžete stiahnuť príslušný USB ovládač pre svoje konkrétne zariadenie. Inštalačný súbor spustite a postupujte podľa pokynov.

Ak by sa, po úspešnej inštalácii USB driveru, objavil nejaký problém s inštaláciou vyvíjané aplikácie na toto pripojené zariadenie, je možné skúsiť ručne aktualizovať príslušné ovládače. Popíšeme si postup pre systém Windows 10:

  • Pripojte zariadenia cez USB k počítaču.
  • Kliknite pravým tlačidlom na ikonu (položku v prieskumníkovi) Tento počítač
  • V otvorenom menu zvoľte položku Spravovať
  • V ľavej časti otvoreného okna Správa počítača kliknite na položku Správca zariadení a nájdite a rozbaľte Prenosné zariadenia.
  • Kliknite pravým tlačidlom myši na názov pripojeného zariadenia a vyberte možnosť Aktualizovať ovládač.
  • V Sprievodcovi aktualizáciou ovládača zvoľte možnosť Vyhľadať ovládač v počítači.
  • Kliknite na tlačidlo Prehľadávať a vyhľadajte priečinok s nainštalovaným ovládačom USB, ktorý býva umiestnený v priečinku s inštaláciou SDK takto \extras\google\usb_driver\.
  • Vyberiete príslušný súbor a nainštalujete.

Týmto máme prípravu na spustenie našich aplikácií na reálnom fyzickom zariadení hotovú.

Emulátor

Druhým spôsobom vyskúšanie našich Android aplikácií je emulátor priamo v PC. Ten nevyžaduje fyzické zariadenie, ale môže byť pomalší. Prvým krokom pre sprevádzkovanie emulátora bude vytvoriť nejaké virtuálne zariadenia, v ktorom aplikácii spustíme. V hornej lište Android Studio v ponuke Tool zvolíme možnosť AVD Manager:

Základy vývoja Android aplikácií v Jave

V uvítacom okne klikneme na tlačidlo "+ Create Virtual Device ...":

Základy vývoja Android aplikácií v Jave

V nasledujúcom okne budeme vyberať typ zariadenia. Vľavo zvolíme možnosť "Phone", uprostred vyberieme jeho veľkosť a rozlíšenie a klikneme na tlačidlo Next:

Základy vývoja Android aplikácií v Jave

Nasleduje výber verzie Android API, ktorým zvolený typ telefónu vybavíme. Položky, ktoré sú tučne a nemajú vpravo poznámku "Download", môžeme použiť ihneď - sú to verzia, ktoré máme v SDK Manageru stiahnuté. Ukážeme si stiahnutí napríklad verzia Android Q (API 29). Klikneme na modrej "Download" a počkáme na stiahnutie všetkých potrebných súčastí, čo bude nejaký čas trvať:

Základy vývoja Android aplikácií v Jave

Dokončení sťahovania a inštalácie potvrdíme tlačidlom Finish:

Základy vývoja Android aplikácií v Jave

Budeme vrátení do okna s výberom verzie systému, kde už bude možné stiahnutú verziu Android Q zvoliť a potvrdiť tlačidlom Next:

Základy vývoja Android aplikácií v Jave

V ďalšom okne môžeme upraviť názov nášho virtuálneho telefónu. V tomto okne je možné ďalšie rozšírené nastavenia, ale tým sa zaťažovať nebudeme:

Základy vývoja Android aplikácií v Jave

To bol posledný krok a teraz už vidíme okno samotného AVD Manageru s novovytvoreným telefónom. Vyššie popísaným postupom môžeme vytvoriť viac zariadení s rôznymi parametrami a tu, v AVD Manageru, je uvidíme všetky v zozname is veľkostí, akú majú na disku rezervovanú:

Základy vývoja Android aplikácií v Jave

Akékoľvek virtuálne zariadenia spustíme z AVD Manageru kliknutím na ikonku Play v poslednom odstavci tabuľky a vyčkáme, než sa zariadenie zapne:

Základy vývoja Android aplikácií v Jave

Týmto máme pripravené zariadenia a môžeme na ňom spúšťať naše aplikácie;-)

Vo virtuálnom zariadení nie je nutné nastavovať možnosti vývojárov ako v reálnom zariadení. Všetko je už defaultne zapnuté.

Radi by sme upozornili na aktuálny problém s emulátorom a dúfame, že čo najskôr dôjde k oprave chyby a my budeme môcť tento červený odsek z článku odstrániť. Po poslednej aktualizácii emulátora môže emulátor prestať pracovať a hlásiť chybu Emulator: PANIC: Broken AVD system path. Check your ANDROID_SDK_ROOT value [X:\SDK]! Po aktualizácii emulátora konkrétne prestalo Android Studio akceptovať v ceste k priečinku s SDK ne-ASCII znakmi. A pretože, v mojom prípade, cesta "vedie" cez používateľskú zložku Windows, ktorej meno obsahuje slovenské znaky, dochádzalo k chybe. Nechcel som dotknuté zložky skúšať presúvať a zamaskovať si tým na iné problémy, preto som dočasne vo Windows vytvoril druhý účet a pomenoval ho tak, aby názov neobsahoval žiadne slovenské znaky. Ak som vo Windows prihlásený pod týmto novým účtom, emulátor funguje. Popísanou chybu registrujem cca od začiatku marca 2020. Očakávam vydanie aktualizácie, ktorá problém vyrieši. Až sa tak stane, druhý dočasný účet vo Windows odstránim a zároveň s ním aj tento nepekný odsek.

Spustení aplikácie

Máme za sebou prípravu ako skutočného zariadenia, tak i toho virtuálneho. Zoznam všetkých použiteľných zariadení (ako virtuálnych, tak fyzických) nájdeme hore, pozri nasledujúci obrázok:

Základy vývoja Android aplikácií v Jave

Tu na obrázku je konkrétne vidieť jeden pripojený telefón HUAWEI. Žiadne virtuálne zariadenia spustené v danú chvíľu nie je. Dostupné virtuálne zariadenia, ktoré máme v AVD Manageru (tu máme len jedno), sú vidieť v strednej časti ponuky. Ak v ponuke zvolíme virtuálne zariadenia, ktoré nie je zapnuté a spustíme aplikáciu, toto virtuálne zariadenie sa automaticky zapne.

A ako spustíme aplikáciu? Na predchádzajúcom obrázku, vpravo od zoznamu dostupných zariadení, je zelené tlačidlo "Run app". Na tlačidlo kliknite a počkajte dokončenie buildu projektu a spustenie aplikácie vo zvolenom zariadení:

Základy vývoja Android aplikácií v Jave

Máme hotovo!

Týmto sme úspešne spustili prvú aplikáciu! Ak sa vám vyskytli nejaké problémy, neváhajte sa opýtať v komentároch pod článkom.


 

Predchádzajúci článok
Android programovanie - Android API a štruktúra projektu
Všetky články v sekcii
Základy vývoja Android aplikácií v Jave
Článok pre vás napísal Pavel
Avatar
Užívateľské hodnotenie:
1 hlasov
Autor se věnuje programování v Javě, hlavně pro Android. Mezi jeho další zájmy patří Arduino, Minecraft.
Aktivity