Android: Ladění aplikace
Z MiS
(Rozdíly mezi verzemi)
(Popsáno spouštění .apk na mobilu přímo) |
(Okomentovány ADB ovladače.) |
||
Řádka 2: | Řádka 2: | ||
<div class="Motto">Šest programátorských zákonů: 1. V každém programu je alespoň jedna chyba. 2. Každý program lze zkrátit alespoň o jeden řádek. 3. Nejjednodušší chyby se nejhůře hledají. 4. Každou opravou se do programu zanese nová chyba. 5. Když už se zdá, že program je v pořádku, určitě jsme něco přehlédli. 6. Programátor dělá, co umí. Počítač si dělá, co chce.</div> | <div class="Motto">Šest programátorských zákonů: 1. V každém programu je alespoň jedna chyba. 2. Každý program lze zkrátit alespoň o jeden řádek. 3. Nejjednodušší chyby se nejhůře hledají. 4. Každou opravou se do programu zanese nová chyba. 5. Když už se zdá, že program je v pořádku, určitě jsme něco přehlédli. 6. Programátor dělá, co umí. Počítač si dělá, co chce.</div> | ||
+ | |||
== Jak zkoušet/ladit aplikace pro Android? == | == Jak zkoušet/ladit aplikace pro Android? == | ||
Při vývoji aplikací pro Android je ladění náročnější v tom, že aplikace nelze spustit přímo na počítači, na kterém vývojář pracuje. Tedy alespoň do doby, než někdo napíše dobré vývojové prostředí běžící na Androidu... ;) | Při vývoji aplikací pro Android je ladění náročnější v tom, že aplikace nelze spustit přímo na počítači, na kterém vývojář pracuje. Tedy alespoň do doby, než někdo napíše dobré vývojové prostředí běžící na Androidu... ;) | ||
+ | |||
== 1. Spuštění *.apk na mobilu == | == 1. Spuštění *.apk na mobilu == | ||
* Nejjednodušší metoda, ale neumožňuje ladění v pravém slova smyslu. | * Nejjednodušší metoda, ale neumožňuje ladění v pravém slova smyslu. | ||
* Ve vývojovém prostředí přeložíme aplikaci. Balíček <code>*.apk</code> pak zkopírujeme do mobilního zařízení a spustíme. Zkoušíme chování aplikace. | * Ve vývojovém prostředí přeložíme aplikaci. Balíček <code>*.apk</code> pak zkopírujeme do mobilního zařízení a spustíme. Zkoušíme chování aplikace. | ||
+ | ; Výhody: | ||
+ | * Není třeba na počítači ani v mobilním zařízení nic instalovat. | ||
+ | * Stačí soubor <code>*.apk</code> zkopírovat do cloudového úložiště. | ||
+ | * Aplikaci vidíme přímo na mobilním zařízení v reálné podobě. | ||
; Nevýhody: | ; Nevýhody: | ||
* Vyžaduje povolit (alespoň dočasně) spouštění aplikací ze zdrojů jiných než Google Play. | * Vyžaduje povolit (alespoň dočasně) spouštění aplikací ze zdrojů jiných než Google Play. | ||
Řádka 14: | Řádka 20: | ||
* Nemáme možnost sledovat, co se děje uvnitř aplikace. | * Nemáme možnost sledovat, co se děje uvnitř aplikace. | ||
* Můžeme takto zkoušet aplikaci jen na zařízeních a verzích Androidu, která máme fyzicky k dispozici. | * Můžeme takto zkoušet aplikaci jen na zařízeních a verzích Androidu, která máme fyzicky k dispozici. | ||
+ | |||
+ | |||
+ | == 2. Připojení k mobilu prostřednictvím ovladačů == | ||
+ | * Pokud máme k dispozici ovladače od výrobce mobilního zařízení (obvykle jdou stáhnout z webu výrobce), můžeme propojit Android Studio s mobilním zařízením. | ||
+ | * Aplikaci pak spouštíme přímo z Android Studia. | ||
+ | * Aplikace běží na mobilním zařízení, připojeném přes USB kabel. | ||
+ | * Informace o událostech, probíhajících v zařízení, se posílají do počítače a dají se zobrazit v Android Studiu či jiném vývojovém prostředí. | ||
; Výhody: | ; Výhody: | ||
− | * | + | * Skutečné ladění s minimálními nároky na výkon počítače (aplikace běží v mobilním zařízení). |
− | + | ||
* Aplikaci vidíme přímo na mobilním zařízení v reálné podobě. | * Aplikaci vidíme přímo na mobilním zařízení v reálné podobě. | ||
+ | ; Nevýhody: | ||
+ | * Je třeba do počítače instalovat ovladače zařízení. (Správcovské oprávnění, ovladače mohou kolidovat s dalšími programy v počítači,...) | ||
+ | * Ovladače jsou specifické pro konkrétního výrobce mobilních zařízení (nebo spíše pro konkrétní skupinu zařízení daného výrobce). | ||
+ | * V mobilním zařízení je třeba povolit (alespoň dočasně) vývojářský režim. | ||
+ | * Můžeme takto zkoušet aplikaci jen na zařízeních a verzích Androidu, která máme fyzicky k dispozici. | ||
− | |||
== 3. Virtualizace zařízení AVD == | == 3. Virtualizace zařízení AVD == |
Verze z 9. 3. 2016, 14:30
Šest programátorských zákonů: 1. V každém programu je alespoň jedna chyba. 2. Každý program lze zkrátit alespoň o jeden řádek. 3. Nejjednodušší chyby se nejhůře hledají. 4. Každou opravou se do programu zanese nová chyba. 5. Když už se zdá, že program je v pořádku, určitě jsme něco přehlédli. 6. Programátor dělá, co umí. Počítač si dělá, co chce.
Obsah |
Jak zkoušet/ladit aplikace pro Android?
Při vývoji aplikací pro Android je ladění náročnější v tom, že aplikace nelze spustit přímo na počítači, na kterém vývojář pracuje. Tedy alespoň do doby, než někdo napíše dobré vývojové prostředí běžící na Androidu... ;)
1. Spuštění *.apk na mobilu
- Nejjednodušší metoda, ale neumožňuje ladění v pravém slova smyslu.
- Ve vývojovém prostředí přeložíme aplikaci. Balíček
*.apk
pak zkopírujeme do mobilního zařízení a spustíme. Zkoušíme chování aplikace.
- Výhody
- Není třeba na počítači ani v mobilním zařízení nic instalovat.
- Stačí soubor
*.apk
zkopírovat do cloudového úložiště. - Aplikaci vidíme přímo na mobilním zařízení v reálné podobě.
- Nevýhody
- Vyžaduje povolit (alespoň dočasně) spouštění aplikací ze zdrojů jiných než Google Play.
- Pokud aplikace havaruje, nedostaneme žádnou informaci o důvodů pádu.
- Nemáme možnost sledovat, co se děje uvnitř aplikace.
- Můžeme takto zkoušet aplikaci jen na zařízeních a verzích Androidu, která máme fyzicky k dispozici.
2. Připojení k mobilu prostřednictvím ovladačů
- Pokud máme k dispozici ovladače od výrobce mobilního zařízení (obvykle jdou stáhnout z webu výrobce), můžeme propojit Android Studio s mobilním zařízením.
- Aplikaci pak spouštíme přímo z Android Studia.
- Aplikace běží na mobilním zařízení, připojeném přes USB kabel.
- Informace o událostech, probíhajících v zařízení, se posílají do počítače a dají se zobrazit v Android Studiu či jiném vývojovém prostředí.
- Výhody
- Skutečné ladění s minimálními nároky na výkon počítače (aplikace běží v mobilním zařízení).
- Aplikaci vidíme přímo na mobilním zařízení v reálné podobě.
- Nevýhody
- Je třeba do počítače instalovat ovladače zařízení. (Správcovské oprávnění, ovladače mohou kolidovat s dalšími programy v počítači,...)
- Ovladače jsou specifické pro konkrétního výrobce mobilních zařízení (nebo spíše pro konkrétní skupinu zařízení daného výrobce).
- V mobilním zařízení je třeba povolit (alespoň dočasně) vývojářský režim.
- Můžeme takto zkoušet aplikaci jen na zařízeních a verzích Androidu, která máme fyzicky k dispozici.
3. Virtualizace zařízení AVD
3.1 S podporou HAXM ovladačů
- Vyžaduje procesory značky Intel (nelze použít na procesorech AMD!!!)!