Jedenáct ADB příkazů, kterými ovládnete svého Androida
- Návody
- Karel Kilián
- 17.7.2015
- 16
Pro naše čtenáře jistě není novinkou, že telefon či tablet s Androidem je možné připojit kabelem k počítači či notebooku. Kromě kopírování fotek, videí, písniček a dokumentů ale můžete se zařízením provádět celou řadu dalších věcí. Slouží k tomu takzvané ADB příkazy a dnes vám jedenáct z nich představíme a vysvětlíme, k čemu slouží.
Obsah
- Co je ADB?
- Co budete potřebovat?
- adb devices – výpis připojených zařízení
- adb push – odeslání souboru do zařízení
- adb pull – stažení souboru ze zařízení
- adb reboot – restart zařízení
- adb reboot-bootloader a adb reboot recovery – speciální režimy
- fastboot devices – výpis zařízení
- fastboot oem unlock – odemknutí zavaděče
- adb shell – mnoho příkazů v jednom balení
- adb install – instalace APK balíčků
- adb logcat – zachycení systémových logů
- adb sideload – nečekejte na OTA aktualizaci
Co je ADB?
ADB neboli Android Debug Bridge je dle oficiálních vývojářských stránek univerzální nástroj, pracující v režimu příkazové řádky, který vám umožní komunikovat s emulátorem nebo připojeným zařízením s Androidem. Jedná se o program, fungující v režimu klient-server, který obsahuje tři komponenty:
- Klient, který běží na počítači. Klientskou aplikaci můžete vyvolat příkazem adb.
- Server, který běží jako proces na počítači na pozadí. Server spravuje komunikaci mezi klientem a ADB démonem, jenž běží na emulátoru nebo zařízení.
- Démon, který běží jako proces na pozadí na každém emulátoru nebo zařízení.
Co budete potřebovat?
Kromě počítače, kabelu a telefonu či tabletu s Androidem se neobejdete bez Android SDK. Jedná se o sadu vývojářských nástrojů, kterou Google poskytuje zcela zdarma. Pro naše účely naprosto postačuje instalace balíčku, který najdete na stránce Download Android Studio and SDK Tools v sekci SDK Tools Only.
Instalace je jednoduchá – v podstatě vystačíte s klepáním na tlačítko Next a Install. Zapamatujte si ale složku, kam SDK nástroje instalujete!
Pak spusťte SDK Managera a zvolte instalaci komponent dle níže uvedených snímků. Vyčkejte stažení všech komponent.
Dále budete potřebovat ADB ovladače pro vaše zařízení. Ty byste měli najít na webu výrobce.
Nakonec musíte povolit ladění USB, což provedete následovně:
- Vstupte do systémového nastavení.
- Přejděte do sekce Pro vývojáře.
- Aktivujte volbu Povolit ladění USB.
- Potvrďte svůj záměr tlačítkem OK.
Jestliže v nabídce systémového nastavení položku Pro vývojáře nemáte, proveďte toto:
- Vstupte do systémového nastavení.
- Jděte do sekce Informace o telefonu/tabletu.
- Sedmkrát klepněte na položku Číslo sestavení, dokud se neobjeví nápis Voilá! Stal se z vás vývojář.
adb devices – výpis připojených zařízení
Příkaz adb slouží ke komunikaci se zařízením, proto mu v tomto článku budeme věnovat největší pozornost. Nejprve bude ale nutné spustit příkazový řádek. Ten nejrychleji vyvoláte takto:
- Stiskněte klávesovou zkratku Win+R.
- Zadejte příkaz cmd.
- Potvrďte klávesou Enter nebo stiskem tlačítka OK.
- Spustí se příkazový řádek.
Nyní potřebujete přejít do složky, ve které je uložen soubor adb.exe. Pokud jste neměnili výchozí nastavení instalace SDK Tools, najdete ho ve složce c:Program FilesAndroidandroid-sdkplatform-tools. Zadejte tedy příkaz cd c:Program FilesAndroidandroid-sdkplatform-tools.
Výsledkem by mělo být hlášení C:Program FilesAndroidandroid-sdkplatform-tools>, naznačující, že pracujete v dané složce.
Nyní potřebujeme vyzkoušet, zda zařízení komunikuje s počítačem skrze ADB příkazy. K tomu slouží příkaz adb devices – zadejte ho a potvrďte Enterem.
Pokud se zobrazí pouze hlášení List of devices attached, zkuste zařízení přepnout z režimu připojení MTP na PTP. To provedete tak, že v horní liště klepnete na položku Připojeno jako multimediální zařízení. V nabídce pak místo volby Zařízení pro média (MTP) vyberete Fotoaparát (PTP).
Zobrazí-li se dialog s otázkou, zda si přejete povolit ladění USB z počítače, aktivujte volbu Vždy povolit a potvrďte tlačítkem OK.
Na příkaz adb devices byste pak měli dostat odpověď s číslem a textem device. Tím máte potvrzeno, že zařízení komunikuje skrze ADB. Pokud se tak nestane ani po přepnutí do režimu PTP, pak může být problém v kabelu nebo (a to velmi pravděpodobně) v nainstalovaných ovladačích.
Nyní tedy máme vše nastaveno a můžeme se podívat na další příkazy.
adb push – odeslání souboru do zařízení
Pokud chcete nahrát nějaký soubor do zařízení, můžete použít příkaz adb push. Budete ale potřebovat znát úplnou cestu k souboru, který chcete do zařízení nahrát, a celou cestu v zařízení, kam hodláte soubor uložit.
Pojďme si to ukázat v praxi. Řekněme, že chceme zkopírovat soubor film.avi, který máme na disku C ve složce Filmy, do složky Movies v telefonu/tabletu.
Zadáme tedy příkaz adb push c:filmyfilm.avi /sdcard/Movies/ a potvrdíme Enterem.
Připomínáme, že na Windows se pro oddělení složek a souborů používá zpětné lomítko „\“, zatímco na Linuxu (a tím pádem i na Androidu) klasické lomítko „/“.
Jako odpověď dostanete v případě úspěchu informaci o rychlosti přenosu, velikosti souboru a době operace.
adb pull – stažení souboru ze zařízení
Zatímco příkaz adb push slouží k odeslání souborů do zařízení s Androidem, další příkaz adb pull slouží ke stažení souboru ze zařízení do počítače. Opět ale budete potřebovat znát celou cestu, kde je soubor uložen, a zadat přesnou složku, do které bude zkopírován.
Zkusme si tedy náš soubor film.avi zkopírovat do počítače. Tentokrát do složky Kino, kterou máme pro tyto účely na disku C.
Zadáme tedy příkaz adb pull /sdcard/Movies/film.avi C:Kinofilm.avi a potvrdíme Enterem.
Výsledek je stejný, jako v předchozím případě – tedy v případě úspěchu bude vypsána rychlost přenosu, velikost a čas.
adb reboot – restart zařízení
Příkaz adb reboot můžete využít například v případech, kdy telefon či tablet přestane reagovat.
Stačí tedy zadat adb reboot, stisknout Enter a zařízení bude bez jakéhokoli dalšího dotazu okamžitě restartováno.
adb reboot-bootloader a adb reboot recovery – speciální režimy
Pomocí příkazů ADB můžete zařízení restartovat také do režimu konzole pro obnovení (recovery) nebo zavaděče (bootloaderu). Zpravidla se do těchto módů dostanete kombinací stisku hardwarových tlačítek, ale při použití příkazů si nemusíte pamatovat různé kombinace pro rozličná zařízení. Navíc tak lze řešit i situaci, kdy jedno či více tlačítek nefunguje, případně pokud zařízení start do speciálního módu pomocí tlačítek nepodporuje.
- Do režimu zavaděče (bootloaderu) se dostanete příkazem adb reboot-bootloader.
- Do režimu konzole pro obnovení (recovery) restartujete příkazem adb reboot recovery.
Dávejte pozor na drobnou zradu v pomlčce, která se v prvním případě používá, ve druhém ale nikoli.
fastboot devices – výpis zařízení
Pokud restartujete telefon do režimu zavaděče, nebudou ADB příkazy fungovat, neboť není spuštěn systém a ladící nástroje nekomunikují. Místo adb můžete použít příkaz fastboot, který je jedním z nejmocnějších dostupných nástrojů a mnohá zařízení ho nemají povolený. To, zda váš telefon či tablet má fastboot povolený, zjistíte snadno – pokusíte se v režimu zavaděče odeslat příkaz, kterým ověříte, zda zařízení s počítačem komunikuje.
Příkaz je prostý: stačí zadat fastboot devices a potvrdit Enterem.
Podobně, jako u prvního příkazu v tomto článku, byste měli spatřit sériové číslo zařízení. Je-li tomu tak, pak můžete s tímto nástrojem dále pracovat. V opačném případě lze předpokládat nějaké problémy s ovladačem, proto na prvním místě doporučujeme vyhledat na webu, zda vaše zařízení fastboot podporuje a za jakých okolností.
fastboot oem unlock – odemknutí zavaděče
Na začátku této kapitoly musíme na prvním místě upozornit, že odemknutím zavaděče dojde ke smazání všech dat v zařízení. Pokud o ně nechcete přijít, proveďte nejprve jejich zálohu.
Příkaz fastboot oem unlock odemkne zařízení řady Nexus (nebo značky HTC s použitím příslušného oficiálního nástroje).
K čemu potřebujete odemykat zavaděč? Například k tomu, abyste mohli provést root (samozřejmě na mnoha telefonech a tabletech to lze i bez tohoto kroku), nainstalovat jinou konzoli pro obnovení (recovery) s více možnostmi a schopnostmi, či nahrát alternativní ROM.
U jiných výrobců může probíhat proces odemknutí odlišně a je nutné dohledat podrobnosti na webu. U zařízení Samsung se například používá aplikace ODIN. K odemknutí zavaděče tedy stačí zadat výše uvedený příkaz a odeslat ho Enterem. Pak ještě budete muset potvrdit svůj záměr na obrazovce (v nabídce se pohybujete tlačítky pro nastavení hlasitosti, potvrzujete tlačítkem pro zapnutí/vypnutí).
Zařízení můžete poté restartovat příkazem fastboot reboot.
Zavaděč můžete opětovně zamknout povelem fastboot oem lock. V tomto případě není potvrzení nutné a nedojde ani ke smazání všech dat.
adb shell – mnoho příkazů v jednom balení
Příkaz adb shell slouží primárně k odeslání příkazu do zařízení, kde bude také proveden.
Jednodušeji to pochopíte z následujícího obrázku, kde jsme si nechali vypsat obsah paměťového úložiště. Jedná se o soubory a složky v zařízení, nikoli v počítači, ze kterého jsme příkaz spustili.
Použili jsme nejprve příkaz adb shell a následně ls -a -l. Příkaz ls slouží k vypsání souborů a složek, parametr -l zobrazí názvy ve dlouhém formátu a konečně -a zobrazí všechny, tedy i skryté soubory a složky.
Jakmile se dostanete do tohoto režimu, můžete například povýšit svá oprávnění a pracovat s právy roota. Doporučujeme ale důkladné seznámení s příkazy a parametry shellu, obzvláště pracujete-li s nejvyššími právy. Příkazy přitom spíše než DOSu odpovídají tomu, nač jsou zvyklí pokročilí uživatelé Linuxu či Mac OS X.
Režim shellu opustíte příkazem exit.
adb install – instalace APK balíčků
Zatímco příkazem adb push můžete kopírovat soubory do zařízení, adb install umí instalovat aplikace ve formátu APK. Použití je podobné, jako v případě adb push – musíme tedy zadat celou cestu k aplikaci, kterou hodláme instalovat. Pro rychlejší zadání lze tedy doporučit zkopírování APK souboru do složky, ze které spouštíme adb.
Aplikaci nainstalujete do zařízení příkazem adb install aplikace.apk.
Jak si patrně všimnete, program se nainstaluje bez jakéhokoli požadavku na schválení na obrazovce zařízení. I proto je důležité vypínat ladění USB, pokud ho aktuálně nepoužíváte!
Pokud hodláte aktualizovat již nainstalovanou aplikaci, použijte parametr -r – příkaz tedy bude vypadat takto adb install -r aplikace.apk.
Další zajímavý přepínač je -s. Ten se pokusí nainstalovat program na paměťovou kartu, pokud to systém v zařízení podporuje.
Aplikace můžete pomocí adb příkazů také odinstalovat. Slouží k tomu příkaz adb uninstall. Konvence je podobná, jako v předchozím případě: adb uninstall aplikace.apk.
Také tento příkaz můžete použít s parametry. Například parametr -k odinstaluje aplikaci, ale ponechá všechna data a cache.
adb logcat – zachycení systémových logů
Příkaz adb logcat je jedním z nejužitečnějších příkazů, nicméně výsledkům, které poskytuje, je nutné rozumět. Vrátí totiž seznam událostí z různých protokolů v běžícím systému, takže poskytuje neocenitelné informace vývojáře aplikací. Většina uživatelů se s adb logcat seznámí až tehdy, když je vývojář chybující aplikace požádá o zaslání logů.
Chcete-li zobrazit výstup protokolu na obrazovce počítače, stačí napsat adb logcat a stisknout klávesu Enter. Obsah obrazovky se patrně bude posouvat docela rychle, takže je malá šance, že najdete to, co hledáte. Existují dva způsoby, jak situaci zvládnout: filtry, nebo výstup do textového souboru.
Výstup do textového souboru zajistíte parametrem >soubor.txt. Celý příkaz tedy bude vypadat následovně: adb logcat>soubor.txt. Poté byste měli spustit aplikaci, jejíž pád chcete zachytit – sledování v tu chvíli běží na pozadí. Ukončit ho můžete klávesovou zkratkou Ctrl+C. Následně v souboru soubor.txt, nacházejícím se ve složce, z níž jste spustili adb příkaz, najdete záznamy. Ty můžete poslat vývojáři aplikace k analýze problému.
Musíme ale upozornit, že v souborech protokolu mohou být uloženy citlivé informace. Odesílejte je tedy jen osobě, které důvěřujete, případně otevřete soubor protokolu v textovém editoru a upravte ho podle potřeby.
adb sideload – nečekejte na OTA aktualizaci
Relativně nový a současně jeden z nejjednodušších způsobů, jak aktualizovat zařízení řady Nexus. Při standardní OTA aktualizaci si zařízení stáhne aktualizační balíček z webu Googlu. Jak jistě mnozí majitelé Nexusů potvrdí, často se na tuto formu aktualizace čeká několik dnů až týdnů. Aktualizaci si přitom můžete nainstalovat sami a konečný výsledek bude prakticky stejný.
Jediné, co musíte udělat, je sehnat a stáhnout aktualizační balíček do svého počítače. To pravděpodobně nebude problém – již několik hodin po vydání se objevují odkazy na tyto soubory na oborových webech.
Pak restartujte zařízení do konzole pro obnovení příkazem adb reboot recovery a následně zadejte příkaz adb sideload soubor_s_aktualizaci.zip. Pokud nechcete zadávat celou cestu k souboru, zkopírujte ho do složky, ze které spouštíte adb.
Dalších 13 ADB příkazů, jimiž ovládnete svého Androida
Pokud vás ADB příkazy zaujaly, určitě si nenechte ujít navazující článek Dalších 13 ADB příkazů, jimiž ovládnete svého Androida.
Zdroje: Android Developer, Android Central: Ten basic Android terminal commands you should know.
Karel Kilián je zkušený technický redaktor a copywriter s bohatou praxí v oblasti informačních a komunikačních technologií. Jeho kariéra začala na pozici prodavače, odkud postupně… více o autorovi
Komentáře (16)
Přidat komentář