Publikoval Michal Kočí dňa 19.10.2014 o 22:51 v kategórii Mobilné aplikácie
Pokiaľ nerobíte screenshoty priamo na mobilnom telefóne (na čo môžete mať skvelý dôvod), ale radšej robíte screenshoty na emulátore, spravte si ich krajšie. A mimochodom, skúšali ste už vašu aplikáciu pri ozaj pomalom pripojení?
A pod krajšími screenshotmi myslím, že si pár príkazmi nastavíte aspoň základné vlastnosti emulovaného Androidu, ako napríklad stav baterky. Lebo neviem ako vy, ale ja do Google Play nechcem dávať screenshoty, kde sa batéria nabíja, prípadne je skoro vybitá a podobne :)
Práci s emulátorom sa venujem aj na mojom školení mobilných aplikácií v Cordove. Pokiaľ sa chcete rýchlo a ľahko naučiť programovať mobilné aplikácie v Javascripte, príďte na moje školenie.
Android emulátor používa veľa z nás, ale nie každý vie, že cez telnet môžete emulátor ovládať. Nastaviť si tak môžete okrem stavu batérie napríklad aj stav a spomalenie siete, GPS pozíciu, stav hovoru, ...
Začnite tým, že si spustíte emulátor. Máte? Výborne. A teraz sa pozrite na názov okna emulátora. Vidíte tam niečo podobné číslu 5554? Alebo presne toto číslo? Výborne, to je port, na ktorom sa s emulátorom môžete spojiť cez telnet.
Spustite si prákazový riadok či terminál a pripojte sa:
telnet localhost 5554
Telnet je štandardnou súčasťou MacOS. Pokiaľ máte Windows, musíte si telnet, alebo nejakú jeho alternatívu doinštalovať. Pre Windows 7 môžete skúsiť tento návod, kedy si povolíte nástroj priamo od Microsoftu. Prípadne si naištalujte populárny PuTTY.
Pripojený ste, gratulujem. Čo teraz? Dočítate tento príspevok do konca a pár vecí sa naučíte tu. Alebo si prečítate dokumentáciu na vývojárskych stránkach Androidu.
A keď bude najhoršie, tak napíšete:
help
A zobrazí sa vám zoznam dostupných príkazov podobný tomuto:
help|h|? print a list of commands event simulate hardware events geo Geo-location commands gsm GSM related commands cdma CDMA related commands kill kill the emulator instance network manage network settings power power related commands quit|exit quit control session redir manage port redirections sms SMS related commands avd control virtual device execution window manage emulator window qemu QEMU-specific commands sensor manage emulator sensors
Nápovedu si môžete nechať zobraziť aj ku konkrétnemu príkazu, napríklad pre možnosti napajánia takto:
help power
A dostanete zoznam možností tohto príkazu, zase podobný tomuto:
power display display battery and charger state power ac set AC charging state power status set battery status power present set battery present state power health set battery health state power capacity set battery capacity state
Teoreticky by nemal byť rozdiel medzi praxou a teóriou... Ale v praxi tam rozdiel je.
Tento známi výrok isto poznáte a preto ste už na sto percent pripojený k emulátoru a píšete do okna:
power display
Ak ste na tom ako ja v tomto momente, emulátor sa vám nabíja, možno ho máte skoro vybitý.
status: Charging health: Good present: true capacity: 50
Poďme si teda stav napájania vykrášliť, nech nám na screenshotoch nešpatí :)
Vypneme nabíjanie:
power status not-charging
A baterke dáme 100 percent nabitia:
power capacity 100
Hotovo, gratulujem, už ste pánom svojho emulátora.
V ideálnom svete máme všetci rýchly internet a ešte lepšie zadarmo. Ale v ideálnom svete nežijeme a nezaškodí si niekedy vyskúšať, ako vaša aplikácie ne-/funguje na pomalom pripojení.
Poďme na to. Pozrime sa akú rýchlosť máme aktuálnu:
network status
Nuž, u mňa to vyzerá, že neobmedzenú:
Current network status: download speed: 0 bits/s (0.0 KB/s) upload speed: 0 bits/s (0.0 KB/s) minimum latency: 0 ms maximum latency: 0 ms
A teraz sa poďme potrápiť a otestovať si, či dáta ktoré posielame na server alebo z neho sťahujeme sú patrične malé, aby si našu aplikáciu v kľude vychutnal aj užívateľ na pomalej sieti.
Spomalíme jednoducho:
network speed gsm
A skontrolujeme si stav teraz:
network status
A je to tam:
Current network status: download speed: 14400 bits/s (1.8 KB/s) upload speed: 14400 bits/s (1.8 KB/s) minimum latency: 0 ms maximum latency: 0 ms
Teraz už len doriešiť, aby aplikácia hrdo fungovala aj na pomalom pripojení. To je ale už vo vašich rukách :)
Posledný príklad, ktorý vám chcem ukázať je simulácia prichádzajúceho hovoru. Aby ak to môže mať vplyv na vašu aplikáciu, ste si otestovali tento scenár.
Napríklad keď prehráva audio, čo je napríklad prípad našej Audiolibrix aplikácie, skvelého prehrávača audiokníh. Koniec reklamného hlásenia :)
Prichádzajúci hovor nasimulujete takto:
gsm call 0911222333
A pokiaľ ho chcete zložiť bez užívateľského zásahu na emulátore, tak takto:
gsm cancel 0911222333
Ako vidíte, s emulátorom sa dá robiť množstvo užitočných vecí. Takže až nabudúce budete potrebovať niečo otestovať, zmeniť stav emulátoru či niečo podobné, viete kde a ako začať.
A ak máte zaujímavý tip, určite sa podeľte v komentároch.
Ak nechceš premeškať príspevky ako je tento, sleduj ma na Twitteri, alebo ak máš RSS čítačku, môžeš sledovať môj RSS kanál.