Kui sul on Android-telefon ja tunned vahel, et aku tühjeneb isegi siis, kui sa seda peaaegu ei kasuta, oled ilmselt kuulnud... Uinumisrežiim ja kuidas see aitab vähendada ooterežiimi energiatarbimistSee on funktsioon, mis on süsteemis olnud aastaid, kuid on endiselt suhteliselt tundmatu, mis tähendab, et paljud kasutajad ei saa aru, miks märguanded hilinevad või miks mõned rakendused tunduvad "magavat".
Selles artiklis süveneme sellesse põhjalikumalt Mis on Doze, kuidas see töötab, mis tüüpi Doze'e on olemas, kuidas see teie rakendusi mõjutab, kuidas seda seadistada ja millised tööriistad on saadaval, et sellest maksimumi võtta?Samuti leiate arendaja näpunäiteid, täpsemaid juurõigusvõimalusi ja lahendusi juhuks, kui teavitused saabuvad tänapäevastes Android 13 või Android 14 telefonides hilja.
Mis on Androidi Doze-režiim ja milleks seda kasutatakse?
Doze on lihtsustatult öeldes Energiasäästusüsteem, mida Android kasutab taustategevuse piiramiseks nii palju kui võimalik, kui telefon "laual lebab" ilma et keegi seda puudutaks. See saabus Android 6.0 Marshmallow'ga ja oli loodud lahendama nutitelefonide üht suurimat probleemi: aku tühjenemist, kui te neid ei kasuta.
Kui Doze sekkub, läheb telefon omamoodi olekusse. kontrollitud talveunerežiim, mille puhul protsessori kasutus, võrguühendus, sünkroniseerimine ja paljud alarmid on peaaegu täielikult vähendatudIdee on lihtne: kui kasutaja oma telefoni ei vaata, kasutab süsteem võimalust võimalikult palju magada.
Seda funktsiooni on iga Androidi versiooniga täiustatud. Marshmallow's oli telefonil vaja ikka veel, ekraan välja lülitatud ja ilma laadijata Aktiveerimiseks. Alates Android 7.0 Nougatist tuli funktsioon „kerge tukastus“, mis aktiveerub lihtsalt ekraani väljalülitamisel, isegi kui liigute.
Igapäevases kasutuses on Doze see "vaikne kangelane", keda hiiglasliku nimega menüüdes ei näe, aga kes See teeb vahet, kas lihtsalt päeva lõpuni vastu pidada või mitu lisatundi vastu pidada. sama koormusega.
Kuidas Doze töötab: vedrustuse tsüklid ja hooldusperioodid
Doze'i käitumine põhineb korduval tsüklil: pikad täielikud seisakud, mida katkestavad lühikesed hooldusajadNende akende ajal "avab Android käe" ja lubab rakendustel poolelioleva töö ära teha.
Kui unerežiimid on aktiveeritud (ekraan välja lülitatud, laadijat pole ja täielikus tukastusrežiimis märkimisväärset liikumist pole), läheb süsteem peatatud olekusse, kus See piirab oluliselt võrguühendust, lükkab edasi tavapäraseid alarme ning peatab ajastatud sünkroonimised ja ülesanded.Kõik, mis oodata annab, see ootab.
Aeg-ajalt väljub seade sellest vedrustusest korraks ja siseneb a-sse hooldusperioodSel hetkel saavad rakendused teha järgmist:
- Käivitage viivitatud sünkroonimised (näiteks ootel fotode üleslaadimine või andmebaaside värskendamine).
- Käivita ajastatud ülesandeid kasutades JobSchedulerit või muid ajakavasid.
- Edasilükatud äratuste käsitlemine samal ajal kui Doze oli aktiivne.
- Kasutage ära hetkelist juurdepääsu võrgule andmete saatmiseks ja vastuvõtmiseks.
Huvitav on see, et Android läheb edasi hooldusakende vaheliste puhkeaegade järkjärguline pikendamineMida kauem telefon seisab, seda rohkem aega veedab see unerežiimis ja seda vähem aega aktiivne, jõudes lõpuks mitmetunnise intervallini täielikus tukastusrežiimis.
Seade jätkab liikumise jälgimist koos olulise liikumise detektor (SMD) kui see on täielikus tukastamisrežiimis. Niipea kui see tuvastab, et te selle üles tõstate, liigutate või ekraani uuesti sisse lülitate, väljub see tukastamisrežiimist ja taastab kõigi rakenduste normaalse töö.
Doze'i nõuetekohaseks toimimiseks vajalikud riistvara- ja teenindusnõuded
Selleks, et Doze saaks kõik oma optimeeringud juurutada, peavad seadmel olema teatud elemendid nii riistvara kui ka süsteemiteenuste tasandil. See on oluline arendajatele, aga aitab ka mõista, miks Mitte kõik mobiiltelefonid ei rakenda Doze'i ühtemoodi.
Esiteks vajab Android pilvepõhist sõnumsideteenust, näiteks Firebase'i pilvsõnumside (FCM)See võimaldab teil saada tõukemärguandeid isegi siis, kui süsteem on jõudeolekus. Need märguanded võivad toimida väliste päästikutena, mis annavad rakendustele... väike ajaaken Doze-režiimis töötamiseksaku säästurežiimi täielikult keelamata.
Lisaks täisuinaku jaoks (see, mis nõuab mobiilseadme paigalseisu) a oluline liikumisandur (SENSOR_TYPE_SIGNIFICANT_MOTION, SMD)See andur võimaldab süsteemil otsustada, kas seade on laual või öökapil tõepoolest paigal.
Kui mobiiltelefon vastab neile nõuetele ja Uinumine on lubatud:
- SMD-ga saadavalDoze'i täielikud optimeerimised on aktiveeritud (sh kerged).
- SMD-vabaRakendub ainult kerge uinumisrežiim, mis aktiveeritakse ekraani väljalülitamisel, kuid mitte liikumatusel põhinevat sügavat režiimi.
Süsteemi tasandil määravad tootjad teatud teenused sageli järgmiselt: Tukastusevaba (telefoniteenus, SMS/MMS, kriitilised süsteemiteenused jne), nii et need jätkavad toimimist ka siis, kui seade on "uneolekus". Lisaks saab kasutaja nendest optimeeringutest käsitsi teatud rakendusi eemaldada, kuigi see mõjutab aku tööiga.
Uinumise elutsükkel: millal see rakendub ja millal deaktiveerub
Uinumise elutsüklit saab kokku võtta kui teekonda, mille seade läbib aktiivseks olemise, unerežiimi sisenemise ja taasaktiveerimise vahel. Selleks, et süsteem loeks seadme mitteaktiivseks ja käivitaks uinumise, peab olema täidetud rida tingimusi. sisenemistingimused.
Klassikalises Deep Doze režiimis kontrollib platvorm peamiselt kahte asja: seda ekraan jääb teatud ajaks välja lülitatuks ja seade seisabKui see pole ka laadijaga ühendatud, tekivad ideaalsed tingimused aku piirangute rakendamiseks.
On väga oluline teada, et Uinumisrežiim ei tööta mobiiltelefoni laadimise ajalKui see on ühendatud, saab süsteem aru, et prioriteet pole niivõrd aku säästmine, kuivõrd täieliku kasutuskogemuse ja aktiivsete sünkroonimiste säilitamine.
et välju Doze'istAndroid jälgib mitmeid väljumiskriteeriume. See deaktiveerib end kohe, kui tuvastab:
- Otsene kasutajainteraktsioon (puudutage ekraani, vajutage nuppe, avage mobiiltelefon).
- Seadme ilmne liikumine andurite järgi.
- Ekraani sisselülitamineisegi kui see on ainult teadete nägemiseks.
- Peatselt saabuv äratuskell äratuskellaga programmeeritud.
Teavitused ise, kui need ekraani ei ärata ega hõlma interaktsiooni, Nad ei eemalda Doze seadet.Need kogunevad ja kuvatakse, kui süsteem siseneb hooldusperioodi või kui kasutaja võtab mobiiltelefoni uuesti kätte.
Piirangud tukastamisrežiimis ja erinevused kerge tukastamisrežiimiga
Uinumisrežiimis rakendab Android energiatarbimise vähendamiseks laia valikut piiranguid. Need piirangud varieeruvad olenevalt... Tosin o el Kerge uinumise režiim (kasutusele võetud Android 7.0-s), kuid neil on ühine idee: takistada rakendustel taustal liigset "müra" tekitamast.
Täisunes olekus süsteem kehtestab väga agressiivsed piirangud:
- Rakendustel puudub juurdepääs võrgule peatamise perioodide ajal, välja arvatud väga spetsiifilised erandid (näiteks kõrge prioriteediga push-teavitused).
- Rakenduste äratuskeelde eirataksetakistades neil protsessorit asjatult ärkvel hoidmast.
- Tavalised alarmid lükatakse edasi, välja arvatud äratuskellad või need, mis on loodud
setAndAllowWhileIdle()osetExactAndAllowWhileIdle()millel on rakenduse kohta sageduspiirangud. - WiFi-skaneeringuid ega võrguotsinguid ei teostata kuni sügav vedrustus kestab.
- SyncAdapteri sünkroonimised ja JobScheduleriga ajastatud ülesanded Need lükatakse edasi järgmise hooldusperioodini.
- Rakendused, mis haldavad SMS-e ja MMS-e Need lisatakse ajutiselt lubatud nimekirja, et nad saaksid sõnumeid töödelda ka Doze'is.
Kerges uinumisrežiimis, mis aktiveerub kohe pärast ekraani väljalülitamist, isegi kui telefoni liigutatakse, kehtivad piirangud Nad on mõnevõrra pehmemadaga need jäävad asjakohaseks:
- Taustatööde jaoks pole piiramatut võrguühendust, välja arvatud hooldusperioodidel.
- Ülesanded, sünkroniseerimised ja taustatöö on eristatud, kuigi vähem rangelt..
- Reaalajas sõnumeid (kõnesid, kiirsõnumeid jne) saab vastu võttaeriti kui nad kasutavad võrgu ajutiseks taasaktiveerimiseks FCM-i kaudu kõrge prioriteediga sõnumeid.
Kontseptuaalne tabel näeks välja umbes selline: täielikus tukastamisrežiimis käitub telefon peaaegu nii, nagu oleks see välja lülitatud, lubades ainult kõrge prioriteediga push-teavitused ja kriitilised ülesandedDoze Lightis hoitakse ühenduvust elavamana, kuid suur osa mittevajalikust liiklusest on piiratud.
Seos uinumise, rakenduste ooterežiimi ja mitteaktiivsete rakenduste halduse vahel
Doze pole aku vastupidavuse pärast võitlemisel üksi. Androidil on veel üks oluline funktsioon nimega Ooterežiim Appmis jälgib, kuidas käituvad rakendused, mida kasutaja pole mõnda aega avanud või aktiivselt kasutanud, ja aitab tuvastada rakendused, mis tarbivad kõige rohkem akut.
Samal ajal kui Doze keskendub seadme üldine seisukordRakenduse ooterežiim keskendub järgmisele: iga rakenduse individuaalne käitumineKui rakendust mõnda aega ei kasutata ja see ei vasta teatud tingimustele, märgib süsteem selle "mitteaktiivseks" ja piirab selle juurdepääsu võrgule taustal.
Rakenduse ooterežiimi tõttu mitteaktiivseks tunnistamise vältimiseks tehke järgmist. peab vastama ühele neist kriteeriumidest:
- Et kasutaja ava see selgesõnaliselt hiljutisel perioodil.
- Kas a protsess esiplaanil (nähtav tegevus või õigustatud esiplaanil olev teenus, näiteks muusika esitamine või fotode üleslaadimine).
- See genereerib Nähtavad teatised mida kasutaja lukustuskuval või salves näeb.
Kui telefon on uinumisrežiimis, siis aeg, mille see selles režiimis veedab ei arvestata rakenduse ooterežiimi jaoksSiiski saavad mitteaktiivseteks märgitud rakendused tavapäraseid toiminguid teha vähemalt korra päevas, isegi kui seade jääb pikaks ajaks unerežiimi.
Niipea kui ühendate telefoni vooluvõrku, Android Tõstab rakenduse ooterežiimi piiranguid ja võimaldab neil mitteaktiivsetel rakendustel taastada vaba juurdepääs võrgule ning käivitada edasilükatud töid ja sünkroonimisi.
Tegelik kasutajakogemus: kuidas Doze muudab igapäevaelu
Lisaks tehnilistele üksikasjadele küsib enamik inimesi järgmist: Kas Doze'il on igapäevases kasutuses tõesti mingit tähtsust? Vastus on valdaval enamikul juhtudel jaatav ja üsna paljudel juhtudel.
Selliste seadmete nagu vanem Nexus 5 või samaväärsed mudelid puhul teatasid paljud kasutajad, et pärast Android 6.0-le värskendamist Nad võisid telefoni terveks ööks või mitmeks tunniks lauale jätta ja aku tühjenemine oli minimaalne.Kui varem kadus mobiiltelefoni jõudeoleku tõttu 10–20 laadimispunkti, siis hiljem vähenes laadimisvõimsus drastiliselt.
Need, kes kasutavad oma mobiiltelefone mõõdukalt, pikka aega ekraani välja lülitades ja tavapäraselt rakendusi kasutades, märkavad, et Need võivad laadimiseta vastu pidada ühe või kaks täispäeva, kui see varem oli mõeldamatu ja tasub jätkata Näpunäited aku tööea pikendamiseksVäga intensiivsed kasutajad, kelle ekraan on peaaegu kogu aeg sisse lülitatud, näevad väiksemat erinevust, kuna Doze tuleb pideva suhtluse ajal vaevu mängu.
Negatiivne külg on see, et mõnede telefonide ja konfiguratsioonide puhul võib Doze põhjustada Rakenduste (nt Facebook, Gmail või sõnumside) märguanded saabuvad hilinemisega.Näiteks olla mõnda aega tööl ilma ühtegi märguannet saamata ja siis, kui telefoni kätte võtad või koju jõuad, saad ootamatult hulga märguandeid, mis oleksid pidanud varem saabuma.
Nendel juhtudel saate valida Teatud rakenduste välistamine aku optimeerimisest See võimaldab neil säilitada reaalajas reageerimise, eeldades veidi suuremat energiatarbimist. See on tasakaal aku tööea ja teadete "kohesuse" vahel.
Kuidas keelata Androidi seadetes Doze teatud rakenduste jaoks
Kui teil on kriitiline rakendus (näiteks töösõnumid) ja te ei soovi, et Doze seda aeglustaks, Saate selle aku optimeerimisest eemaldada ilma Doze'i täielikult keelamata. Protsess võib kohandamiskihist olenevalt veidi erineda, kuid üldiselt on see sarnane.
osa tüüpilised sammud Rakenduses Doze'i keelamiseks peate tegema järgmist.
- Külastama Seaded > Rakendused ja märguanded (või sarnane menüü teie mobiiltelefonis).
- Kliki Vaadake kõiki rakendusi kui te ei näe hiljutises nimekirjas seda, mis teid huvitab.
- Valige rakendus (näiteks WhatsApp, Gmail, Facebook jne).
- Rakenduse üksikasjade alt sisestage jaotis Aku (See võib asuda jaotises „Täpsemalt” või sarnases).
- Kliki Aku optimeerimine.
- Muutke vaadet „Mitteoptimeeritud rakendused” vaateks „Kõik rakendused” täieliku nimekirja nägemiseks.
- Leidke soovitud rakendus ja puudutage seda.
- Valige suvand "Ära optimeeri" ja kinnitage valikuga Nõustu või Valmis.
Sellest hetkest alates ei rakenda Android sellele konkreetsele rakendusele enam uinumispiiranguid (vähemalt standardse aku optimeerimise osas). Oluline on seda valikut mitte üle kasutada ja jätta see... mõned rakendused, mis seda tõesti vajavadSest kui liiga palju välja jätta, väheneb autonoomia paranemine märkimisväärselt.