Kaip „Android Go“ gali padėti senesniuose „Android“ telefonuose, kuriuose veikia „Android 8.1 Oreo“.

click fraud protection

„Android Go“ yra „Google“ sumažinta „Android Oreo 8.1“ versija, skirta naujiems, mažai RAM įrenginiams. Kaip paaiškėjo, tai gali padėti sukurti pasirinktinį ROM ir senesniuose įrenginiuose.

„Android Go“ yra „Google“ sumažinta „Android“ versija, pagrįsta „Android 8.1 Oreo“, ir jos tikslas – būti optimizuota „Android“ versija, skirta žemos klasės įrenginiams su 1 GB ar mažesnės RAM. Tai buvo paskelbta praėjusių metų gegužę „Google I/O“ kūrėjų konferencijoje ir galiausiai tų pačių metų gruodį buvo atskleista daugiau detalių. Teigiama, kad jis skirtas naujos kartos pradinio lygio įrenginiams, siekiant užtikrinti, kad tie, kurie yra besivystančios šalys vis dar gali naudotis veikiančiais išmaniaisiais telefonais, kad galėtų prisijungti prie interneto ir naudoti programas.

„Go“ turi daugybę našumo optimizavimo ir patobulinimų, įskaitant 50 procentų mažiau vietos saugykloje nei vidutinis „Android Oreo“ diegimas. „Android Runtime“ (ART) ir branduolio optimizavimo dėka įrenginys, kuriame veikia „Android Go“, veiks vidutiniškai 15 procentų greičiau nei įprastu „Android Oreo“ diegimu tame pačiame įrenginyje. Šie optimizavimai atliekami naudojant daugybę specializuotų „Google“ kūrimo konfigūracijų, kurias paaiškinsime vėliau.

„Android Go“ taip pat naudoja specialias „Go“ programas, pvz Failai eiti, „YouTube Go“. ir Google Maps Go. Tai lengvos „Google“ sukurtų programų versijos, kurioms taikomi mažesni reikalavimai, kad jie veiktų efektyviau. Tai reiškia, kad tie, kurie turi „Android Go“ įrenginius, gali mėgautis dauguma tų pačių privalumų, kuriuos gali gauti ir įprasti „Android Oreo“ naudotojai „Google“ programų rinkinio naudojimas neišleidžiant daug pinigų pavyzdiniam ar net šiek tiek brangesniam biudžetui prietaisas.

Viskas apie „Google“ plečia savo rinką. Tačiau kyla klausimas, ar jei „Android Go“ daugiausia sudaro kūrimo konfigūracija ir optimizuotų „Google“ programų rinkinys, ar kūrėjai gali sukurti savo „Android Go“ versijas? Trumpai tariant, taip, mes galime.

Kai kurie „LineageOS“ kūrėjai jau kuria „Android Go“ optimizuotus tinkintus ROM

Jau pastebime, kad kai kurie pasirinktinių ROM kūrėjai, pvz., XDA Recognized Developer, šiek tiek ėmėsi „Android Go“ AdrianasDC, su savo darbu su LineageOS 15.1 su Android Go kūrimo konfigūracijomis keletas senų Sony telefonų. Aptariami įrenginiai yra „Sony Xperia SP“, „Sony Xperia T“, „Sony Xperia V“ ir „Sony Xperia TX“. Visi šie įrenginiai sukurti 2012 ir 2013 m., tačiau jie gaus „LineageOS 15.1“, pagrįstą „Android 8.1 Oreo“, naudodami „Android“ „Go build“ konfigūracija, kuri gali leisti įrenginiuose sklandžiai paleisti „Google Go“ programas, jei „Android Go“ „Gapps“ rinkinys galiausiai būtų paleistas.

Bet kuris individualus LOS prižiūrėtojas turėtų galėti pristatyti sukonfigūruotą „Android Go“ versiją, kuri yra kūrimo konfigūracijų ir kitų optimizacijų rinkinys. Tai reiškia, kad tie, kurie, pavyzdžiui, įsigijo Sony Xperia T – įrenginį, kuriame paleidimo metu veikia Android 4.0.4 Ice Cream Sandwich, galės naudoti geriau optimizuota „Android 8.1 Oreo“ versija įrenginyje, naudojant tokias programas kaip „YouTube Go“ ir „Google Maps Go“. Jis neveiks pavyzdiniu našumo lygiu, bet taip turėtų būti tinkamas naudoti—ypač įrenginiui, pagamintam 2012 m.


Kaip „Android Go“ gali padėti senesniems „Android“ telefonams paleisti „Android Oreo“.

„Android“ kūrimo konfigūracijos yra parametrų rinkinys, susijęs su įvairiais „Android“ sistemos aspektais, kurie taikomi kuriant sistemos vaizdą, skirtą mirksi įrenginyje. Paprastai tai keičia sistemos veikimą ir pagrindinius „Android Go“ optimizavimus šios konstrukcijos konfigūracijos.

„Android Go“ kompiliavimui naudojamos kūrimo konfigūracijos.

Aš kalbėjausi su XDA Recognized Developer joshuous, kuris man labai padėjo suprasti vykstančius pokyčius – kas iš tikrųjų verčia „Android Go“ veikti. Kai kurių iš šių kūrimo konfigūracijų negalima pakeisti neperkompiliavus, jos yra pačios ROM plano dalis. Tai visiškai didžiosios raidės vėliavos.

Tačiau visos šios vėliavėlės yra susijusios su daugeliu skirtingų „Android“ aspektų, susijusių su saugykla ir atminties naudojimu. Jie apima automatinis saugojimo valdymas, Android mažos atminties žudikas, dex (dalvik pvzišleidžiamų failų) optimizavimo priemonė ir RAM apribojimai programoms paleisti. APK failus sudaro šie DEX failai, todėl tam tikra prasme APK failą galima įsivaizduoti kaip tiesiog ZIP failas, kuriame yra daug .dex failų, o tai iš tikrųjų yra tai, ką „Android“ paleidžia vykdydama taikymas. Vietoj to, automatinį saugyklos valdymą valdys programa „Files Go“, o ne „Android“ sistema.

Android Go Utilities Android mažai RAM režimas

„Android 4.4 KitKat“ sistemoje „Google“ pristatė naują vėliavėlę pavadinimu „žemo ramumo“, kuri buvo skirta palaikyti įrenginius su 512 MB RAM. Tai atlieka daugybę sistemos optimizavimo. Šie pakeitimai yra labai naudingi mažesnio RAM įrenginiams.

Patobulintas atminties valdymas

  • Patvirtintos atmintį taupančios branduolio konfigūracijos: pakeiskite į ZRAM.
  • Užmuškite talpykloje saugomus procesus, jei jie bus iškrauti ir per dideli.
  • Neleiskite didelėms tarnyboms grįžti į A paslaugas (kad jos negalėtų užmušti paleidimo priemonės).
  • Užmuškite procesus (netgi tokius, kurių neįmanoma užmušti, pvz., dabartinį IME), kurie tampa per dideli, kai atliekama tuščioji priežiūra.
  • Serializuoti foninių paslaugų paleidimą.
  • Suderintas mažai operatyviosios atminties įrenginių atminties naudojimas: griežtesni atminties trūkumo (OOM) reguliavimo lygiai, mažesnės grafikos talpyklos ir kt.

Šie pirmiau minėti pakeitimai iš esmės užtikrina, kad sistema, kur įmanoma, naudotų suspaustą RAM, naudodama ZRAM. ZRAM iš esmės yra RAM diskas (saugojimo laikmena, kuri naudoja RAM, daug greičiau nei naudojant įprastą įrenginio saugyklą) kaip apsikeitimo failas. Apsikeitimo failas naudojamas, kai naudojama daug RAM, o programoms vis dar reikia atminties. Tai yra daug, daug lėčiau nei RAM ir, jei įmanoma, to reikėtų vengti. Iš esmės tai tiesiog suspaudžia atminties turinį.

Sumažinta sistemos atmintis

  • Apkarpyti system_server ir SystemUI procesai (sutaupyta keletas MB).
  • Iš anksto įkelkite dex talpyklas į Dalvik (sutaupyta keletas MB).
  • Patvirtinta JIT išjungimo parinktis (vienam procesui sutaupo iki 1,5 MB).
  • Sumažinta šrifto talpyklos našta kiekvienam procesui.
  • Pristatytas „ArrayMap / ArraySet“ ir plačiai naudojamas sistemoje kaip „HashMap“ / „HashSet“ pakaitalas.

Tai, kas čia dažniausiai vyksta, yra tiesiog sumažintas atminties suvartojimas dėl įvairių įrenginyje veikiančių procesų, kad būtų kuo konservatyvesni. Esminės sistemos paslaugos buvo panaikintos, kad būtų naudojama kuo mažiau atminties fone, nes svarbus kiekvienas RAM megabaitas.

„Android Go“ naudoja modifikuotą „Low Memory Killer“ ir „dex“ optimizavimą

Atsižvelgiant į tai, kad „Android Go“ daugiausia skirta įrenginiams su 1 GB ar mažiau RAM, reikės agresyvesnio atminties valdymo. „Android Go“ modifikuoja „Low Memory Killer“ (LMK) keliais skirtingais būdais. Pirma, kai išnaudojama daug RAM, mažos atminties žudikas pereina į "kritinis spaudimas"valstybė. Taip yra todėl, kad kai naudojama daug atminties, sistema taps vangi dėl nuolatinio bandymo pasiekti įrenginio saugykloje esantį apsikeitimo failą. Laikydami laisvą RAM, sistemai nereikės naudoti šio apsikeitimo failo ir išvengsite atminties sugadinimo. Atmintis pažeidžiama, kai įrenginio atmintis yra pilna, ir nuolat reikia keisti apsikeitimo failą įrenginio saugykloje, o tai labai pablogina našumą.

Paslaugos ir „WiFi“ paslaugos nustatytos kaip „greičio profilis“, o tai reiškia, kad pasirinkti šių paslaugų metodai yra sudaryti anksčiau (AOT). (Metodas reiškia kodų rinkinį, kurį galima pavadinti bet kuriuo tašku.) Tai sumažina RAM naudojimą ir saugykla, nes „Android“ sistemai nereikės nuolat perkompiliuoti pagrindinių paslaugų, veikiančių „ prietaisas. Tuo tarpu bendrinami APK yra nustatyti kaip „pagreitinti“, o tai yra skirta suteikti daugiau akumuliatoriaus veikimo laiko ir papildomų procesoriaus ciklų optimizuojant dex instrukcijas, kad būtų pagerintas našumas.

Kalbant apie dex optimizavimą, „Android Go“ daro gana daug. Pradedantiesiems tai bus po 10 dienų sumažinti programos versiją jei jis nenaudojamas vietos taupymui. Sumažėjimas čia nereiškia, kad faktinis programos versijos numeris mažėja, bet tai reiškia, kad programos dalvik_cache bus išvalyta. Dalvik talpykla naudojama tam, kad įrenginiui nereikėtų perkompiliuoti programėlių, o sukompiliuoja tik būtiniausias jos dalis ir jas kaupia talpykloje. Likusi dalis sukompiliuojama naudojant „Just in Time“ (JIT) kompiliatorių, kai programa paleidžiama. Tačiau jei paraiška nenaudojama 10 dienų, pašalinamos ir esminės iš anksto sudarytos paraiškos dalys. Tai daroma siekiant atlaisvinti kuo daugiau vietos. Kitas paprastas pakeitimas – neleidžiama, kad programos RAM naudojimas viršytų 256 MB, kad programa negalėtų naudoti visos įrenginio RAM.


Ar „Android Go“ yra pasirinktinių ROM kūrimo žemos klasės įrenginiuose ateitis?

Šiuo metu mes nežinome atsakymo į šį klausimą, tačiau ateitis atrodo šviesi, kai bus kuriami pasirinktiniai ROM senesniuose įrenginiuose. Gali kilti ir kitų problemų, kai įrenginyje veikia naujesnė „Android“ versija, tačiau teoriškai reikia atnaujinti į labiau optimizuotą „Android Go“, pagrįstą „Android Oreo“. turėtų kad senesnis, žemos klasės įrenginys veiktų geriau.