Widgetek teljesítményéről

Szerencsére nagyon ritkán, de néha hallani olyan észrevételeket, hogy az Elixir widgetek túlságosan merítik az akkumulátort. Végeztem egy kis tesztet a saját készülékemen, hogy lássam nálam hogy teljesít. Természetesen a teljesítmény függ a készüléktől, az operációs rendszertől, a környezettől, a használati módtól, a widgetek típusától és egyéb tényezőktől így ez a cikk inkább csak érdekességnek tekinthető, egy konkrét eset leírása.

  • Készülék: HTC Desire
  • ROM: CyanogenMod-7.1.0-Desire
  • Használati mód: Wi-Fi napközben folyamatosan bekapcsolva, normál használat, e-mail olvasás, telefonálás, internet használat
  • Widget: egy 4×2-es widget: belső tárhely, akkumulátor, képernyő timeout kapcsoló, újraindító kapcsoló, wifi kapcsoló, képernyő zár kapcsoló, hangerő, alkalmazás indítók, parancsikonok, üres helyek

A következő képeken látható, hogy töltés nélkül több mint 85 óráig, azaz három és fél napig bírta a telefon folyamatos nappali wifi használat mellett.

 

Amennyiben mégis azt gyanítjuk, hogy egy Elixir widget felelős az akkumulátor merüléséért a Widget teljesítmény képernyőn le tudjuk ellenőrizni hogyan teljesít a widgetünk. Ez a képernyő két módon nyitható meg:

  • az Elixir 2 főképernyőn kattintsunk hosszan a widgetek vagy állapotsor ikonokra és válasszuk ki a Widget teljesítmény opciót
  • a widget szerkesztő képernyőn kattintsunk a fejlécben lévő jobbra nyíl ikonra és válasszuk ki a Widget teljesítmény opciót

Ezen az oldalon a következőket láthatjuk:

 

A legelső sor mutatja a mérés kezdetét és időtartamát. Ne próbáljunk meg következtetéseket levonni néhány óra használat után, érdemes legalább egy napot várni.

A következő rész azt mutatja hogy ez idő alatt hányszor frissült a widget, a widget frissítése mennyi időt vett igénybe és hogy mennyi az átlagos widget frissítési idő. A legfontosabb érték talán a százalékos érték amely azt mutatja hogy a widget frissítése mennyi időt vett igénybe a rendszer futásához viszonyítva. Ez az érték megmutatja azt hogy körülbelül mekkora mértékben felelős a widget az akkumulátor merüléséért. Ha ez az érték 0-1% körül van akkor a widgetünk jól teljesítményt nyújt.

Amennyiben a százalékos érték nagy mértékű, a listában ellenőrizhetjük melyik az az ikon amely a widget nem megfelelő teljesítményéért felelős. A listában legelöl azok a típusok szerepelnek amelyek frissítése nagyobb időt vett igénybe. A számokból látszik, hogy a widget 88 frissítéséből 59-ért a belső tárhely volt felelős. Ez az ikon percenként frissül, így a mérés időtartama alatt 17*60+22=1042 alkalommal kellett volna frissülnie. Optimalizáció miatt azonban widget nem frissül ha a képernyő nincs bekapcsolva, így csak 59 alkalommal kellett ezt frissíteni. Egyéb ikonoknál lévő számokból látszik hogy a belső tárhely frissítése nem kényszeríti ki egyéb információk frissítését, a Wifi ikon csak 12 alkalommal volt ténylegesen frissítve, ez az Elixir 2-ben bevezetett másik optimalizálásnak köszönhető.

Az is látható hogy a widget teljesítményért legnagyobb részben a Wifi ikon felelős, de mivel ez is csak 22%-ot igényel így a widget működésével minden rendben van. Amennyiben egy “Olvasatlan e-mail üzenetek száma” ikont tennénk a widgetbe és ennek frissítési rátáját 10 másodpercre állítanánk, akkor ezen az oldalon azt látnánk, hogy ez az ikon a widget frissítési idejének több mint 90%-át emészti fel, így javasolt lenne az ikon frissítési idejének növelése a jobb teljesítmény érdekében.

A fenti adatokból (telefon használati idő, widget frissítési idő és widgeten belüli ikonok frissítési ideje) az derül ki hogy az én készülékemen az általam használt widget jó teljesítményt nyújt, nem kell aggódni a fogyasztásáért.