Hlavní navigace

Optimalizace Androida na výkon a výdrž

6. 8. 2010
Doba čtení: 5 minut

Sdílet

Když se nám dostane do ruky nový androidí telefon, po pár týdnech používání začneme uvažovat o možnostech, jak optimalizovat jeho výdrž na baterii a také výkon. Máte-li v telefonu přístup k právům roota, můžete toho udělat více, ale i bez nich se dá Android postavit na nohy tak, že absenci práv ani nepoznáte.

Telefony vyšší třídy se už dodávají s 1 GHz procesorem, který dokáže vdechnout elán každé náročné aplikaci, ale telefony s pomalejšími procesory, kterých je momentálně většina, jsou v nevýhodě a přitom se na nich používají prakticky stejné aplikace. Moje HTC Hero dokázalo být v některých situacích, kdy jsem se rozhodl využít multitaskingu víc než se mu líbilo, pěkně líné. Nejvíce mi vadily pomalé reakce přepínání ploch a problémy se zvedáním hovorů, kdy telefonní aplikace pořád ukazovala, že někdo volá, i když byl hovor dávno zvednut. To je problém hlavně HTC Sense, resp. Sense UI, které je podle mého subjektivního názoru pomalejší s každou verzí. Naopak, co mi vcelku nevadí, je čas, za který se aplikace spustí, ale jak je v paměti, chci, aby jela rychle. Bohužel reakce uživatelského rozhraní zázrakem neudělám rychlejší, ale můžu tomu pomoci. Jako problém jsem toto začal vnímat až po měsících používání, předtím jsem tomu nevěnoval takovou pozornost.

Optimalizace bez roota

Celkově máme hned několik možností, jak z telefonu vyždímat maximum. Problémem telefonů od HTC a také některých komunitních ROMek je HTC Sense resp. Sense UI a to hlavně jeho launcher. To je aplikace, kterou máte před očima asi nejčastěji, zprostředkovává vám plochy, její ovládací prvky (telefon, seznam aplikací) a také widgety. Launcher je právě to, co si lidé představují pod pojmem Android, je to brána do celého telefonu. Když ztratíte launcher, jinak než přes kabel s program adb ho už neoživíte. Launcher by se dal přirovnat k desktopovému prostředí, jako je GNOME a KDE na běžných počítačích.

Pokud tedy trpíte podobnými problémy s reakcemi jako já, vyzkoušejte nějaký alternativní launcher, můžete jich mít v telefonu dokonce víc a vybírat si mezi nimi. Mně se osvědčil LauncherPro. Změnou launcheru neztratíte jiné HTC Sense aplikace, takže třeba aplikace na volání nebo seznam lidí vám nezmízí. LauncherPro má k dispozici jak placené, tak volné funkce. Můžete si ho nainstalovat a používat bez utracení jediného dolaru, ale za necelé 3 USD můžete aktivovat bonusové funkce navíc, jako jsou třeba velmi zajímavé widgety pro záložky nebo seznam lidí. Platbou sice nic moc nezískáte, ale jelikož se koná mimo Market a přes PayPal, podpoříte tím autora a další vývoj launcheru.

Víc vás ale asi zajímá, co všechno LauncherPro přinese. Jako první bych chtěl uvést, že je mnohem rychlejší než launcher z HTC Sence, ale srovnání s normálním lancherem z vanilkového Androida nemám. Nepoužíval jsem ho moc dlouho, abych mohl porovnávat. LauncherPro má ovšem velmi zajímavé funkce, o které byste určitě nechtěli přijít. Umí třeba zobrazit plochu naležato podle polohy telefonu, zobrazit pět ikonek vedle sebe místo čtyř, má dock, kde se schovávají aplikace dostupné na všech plochách. Dokáže schovat statusbar a zobrazit ho na stisk tlačítka v docku, můžete si v něm nastavit počet ploch i plochu, která má být výchozí, lze nastavit chování tlačítka home a mnoho mnoho dalšího. LauncherPro překonává prakticky cokoli, co nám dává vanilkový Android, HTC Sense, ale i některé další launchery.

Druhou věcí, která vám zaručeně vysaje baterii telefonu do dna za jediný den, je připojení k internetu. Zvyk na mobilní internet je sice silný, ale zkuste se zamyslet nad tím, jestli musí být telefon připojený pořád. Nakonec dojdete k závěru, že nemusí a že by bylo fajn ho pouštět třeba jednou za 20 minut a nebo když je zapnutý display. S takovýmto úkolem si poradí program JuiceDefender, má také svou placenou variantu, bez které se pravděpodobně neobejdete, bude chybět spousta užitečných vlastností jako práce s WiFi, aplikacemi, noční režim a mnoho dalšího. JuiceDefender je program, který běží na pozadí a podle nastavených podmínek zapíná připojení k internetu. Podmínek může být spousta, ale základní funkcí je zapnutí připojení se zapnutím displaye, a k tomu ještě pravidelné zapínání v nastaveném intervalu na určitý čas. Tím se výdrž na baterii i zdvojnásobí.

Mezi pokročilými a často i placenými funkcemi je pak třeba zapínání WiFi na základě polohy, noční režim, ve kterém si můžete nastavit hodiny, kdy se k internetu přistupovat nebude, nastavení času, kdy bude připojení zapnuté pořád, vypnutí připojení pod určitou hodnotu vyčerpání baterie, zapnutí či vypnutí dat pro konkrétní aplikací. Navíc aplikace umí přetaktovat procesor, pokud máte roota.

Optimalizace s rootem

S rootem už jsou ruce svázané méně a můžeme se pustit i do jiných optimalizací, než jsou oficiálně k dispozici.

Přetaktování

Přetaktování dneska podporuje jádro téměř každé komunitní ROMky, takže stačí jen najít aplikaci, která toho umí využít. Nejčastěji se používá OverclockWidget, což je widget s rozměrem 1×1, který umožní nastavit minimální i maximální frekvenci pro stav vypnutého i zapnutého displaye. Widget sám ukazuje, jakou frekvenci nyní telefon má. Další možností je třeba Open Overclocker. To je aplikace jako každá jiná a dělá prakticky to samé jako widget. Dokonce ji někteří uživatelé považují za lepší, soudě podle diskuse.

Problém přetaktování je hlavně v tom, že při přepnutí frekvence reagují některé aplikace různě, například klávesnice HTC_IME z HTC Sense nepíše, dokud není frekvence přepnuta na vyšší, restartuje se při přepnutí frekvence aplikace pro foťák nebo se zavře menu s aplikacemi. Je možné, že už jsou tyto problémy vyřešeny, ale já kvůli nim přestal přetaktování používat. Množství ušetřené energie je sporné, vyloženě hodiny na výdrži navíc jsem nepozoroval.

JIT

Mnohem zajímavější a taky méně stabilní je použití JIT neboli Just In Time kompilátoru. Při vykonávání běžného programu napsaného v Javě se překládá byte kód javy do strojového kódu procesoru, na kterém zrovna aplikace běží. Doplněním cache do tohoto mechanismu a inteligentním rozhodováním, co se do ní má uložit, lze několikanásobně zrychlit běh vykonávaného programu. Je to díky tomu, že přeložený a zacachovaný byte kód se nemusí překládat pokaždé, když ho je zavolán.

Pokud máte JIT ve svém systému, dá se vypnout. Návod je většinou hned pod červeným varováním, kde se dozvíte, že je to experimentální vlastnost. JIT je většinou dostupný jako volba v „kuchyni“ konkrétní ROMky. Pro moje HTC Hero to je VillainROM, jiné telefony na tom jsou podobně.

CS24_early

JIT je budoucnost androidích telefonů a není důvod ho nevyzkoušet. Důležité je otestovat všechny aplikace, které používáte. Může se stát, že všechno pojede, ale JIT si taky nemusí s některými aplikacemi poradit.

Závěr

Pokud vyzkoušíte alespoň některé rady z tohoto článku, dostanete rychlejší telefon, který vydrží déle na baterii. Rozhodně se nebojte experimentovat, nemáte téměř co ztratit, ale můžete hodně získat.

Byl pro vás článek přínosný?

Autor článku

Adam Štrauch je redaktorem serveru Root.cz a svobodný software nasazuje jak na desktopech tak i na routerech a serverech. Ve svém volném čase se stará o komunitní síť, ve které je již přes 100 členů.