Keresés

Új hozzászólás Aktív témák

  • freestyler8

    csendes tag

    válasz fecg21 #2501 üzenetére

    osztom - én is arra gondoltam itt legfőképp, hogy többet fogyaszt. de azt nem tudom, hogy ez a többletfogyasztás számottevő-e egyáltalán... :F

  • cipofuzo87

    tag

    válasz fecg21 #2501 üzenetére

    Az elgondolás jó, de annyival kiegészíteném, hogy az alkalmazások nem futnak állandó jelleggel. A háttérbe kerülő alkalmazások futtatása felfüggesztődik, átmennek alvó állapotba, és attól, hogy a memóriában maradnak, nem visznek el processzoridőt. Persze nagyon sok olyan alkalmazás vagy szolgáltatás van, ami valamilyen esemény hatására kezd el valamit csinálni, vagy éppen ténylegesen folyamatosan fut a háttérben (zenelejátszó). Ilyen esemény lehet időzített esemény, a képernyő bekapcsolása, mobil net újra elérhető, bluetooth bekapcsolása, igazából bármi, tehát gyakorlatilag mégiscsak bármikor akcióba lendülhetnek az alkalmazások.

    Tudok konkrét példákat is mondani, de ha valaki megnézi a logcat-et, akkor lehet látni, hogy mivel szenved épp a telefon.

    3D-s live wallpapernél meg az lehetett a probléma, hogy Androidon elvileg úgy kellene OpenGL ES alapú alkalmazásokat fejleszteni, hogy amikor az alkalmazás alvó állapotba kerül, akkor elengedi az összes erőforrást (betöltött textúrák, modellek, stb), majd amikor feléled, akkor újra betölti ezeket. Ez minden bizonnyal azért van így, hogy a GPU is alvó állapotba mehessen. Azonban a legtöbb esetben ez sajnos nem ad megfelelő felhasználói élményt, mert sok lenne minden egyes képernyő bekapcsolás után még 2 másodpercet várni arra, hogy újra betöltsön a háttér, játékoknál pedig senki sem szeretne 10 másodperceket várni, hogy mondjuk egy hívást követően folytatni tudja a játékot. A megoldás az, hogy meg lehet oldani (egy kis hekkeléssel), hogy készenléti állapotban se dobja/vesszen el az OpenGL kontextus. Ha jól tudom, akkor valamelyik android verziótól már a kontextus megtartását is lehet választani onPause esetén, és nem kell hekkelni hozzá semmit, és akkor az már gondolom driver szinten korrekt módon meg van oldva, de általában az alkalmazásokat 2.1-re készítik, mert az kompatibilis a forgalomba lévő telefonok 95%-ával, és ennél még hekkelni kell.

    [ Szerkesztve ]

Új hozzászólás Aktív témák