Режим на дрямка на Android: Пълно ръководство за режим на пестене на енергия в режим на готовност

  • Doze минимизира фоновата активност, когато мобилното устройство е в режим на готовност, комбинирайки периоди на дълбок сън с кратки прозорци за поддръжка.
  • Android прилага ограничения върху мрежата, процесора, алармите и синхронизациите, разчитайки на сензори за движение и услуги като Firebase Cloud Messaging.
  • Потребителите и приложенията могат да коригират или поискат изключения за дрямка, балансирайки живота на батерията и получавайки известия почти в реално време.
  • Разширени инструменти като Naptime, Doze Settings Editor или EnforceDoze позволяват обширна персонализация на поведението на Doze на съвместими устройства.

Режим на дрямка на Android

Ако имате телефон с Android и понякога чувствате, че батерията се изтощава, дори когато почти не го използвате, вероятно сте чували за... Режим на дрямка и как той помага за намаляване на консумацията на енергия в режим на готовностТова е функция, която е в системата от години, но все още е сравнително непозната, което означава, че много потребители не разбират защо известията се забавят или защо някои приложения изглеждат „заспали“.

В тази статия ще се задълбочим Какво е Doze, как работи, какви видове Doze съществуват, как влияе на вашите приложения, как да го конфигурирате и какви инструменти са налични, за да извлечете максимума от него?Ще намерите и съвети за разработчици, разширени опции за root достъп и решения за случаите, когато известията пристигат със закъснение на съвременни телефони с Android 13 или Android 14.

Какво е режимът Doze на Android и за какво се използва?

Дрямката е, казано по-просто, Енергоспестяващата система, която Android използва, за да ограничи максимално фоновата активност, когато телефонът „лежи на масата“ без никой да го докосва. Пристигна с Android 6.0 Marshmallow и беше проектиран да се справи с един от най-големите проблеми със смартфоните: изтощаването на батерията, когато не ги използвате.

Когато се намеси Доуз, телефонът преминава в нещо като контролирана хибернация, при която използването на процесора, достъпът до мрежата, синхронизациите и много аларми са почти напълно намалениИдеята е проста: ако потребителят не гледа телефона си, системата се възползва от възможността да спи колкото е възможно повече.

Тази функция е усъвършенствана с всяка версия на Android. В Marshmallow тя изискваше телефонът да бъде все още, с изключен екран и без зарядно устройство за активиране. Започвайки с Android 7.0 Nougat, се появи „лека дрямка“, която се активира просто чрез изключване на екрана, дори ако се движите.

В ежедневната употреба, Doze е онзи „тих герой“, който не виждате в никое меню с гигантско име, но който Това прави разликата между това просто да изкараш до края на деня или да издържиш няколко допълнителни часа. със същото натоварване.

Как работи Doze: цикли на окачване и периоди на поддръжка

Поведението на Доуз се основава на повтарящ се цикъл: дълги периоди на пълно спиране, прекъсвани от кратки прозорци за поддръжкаПрез тези прозорци Android „отваря ръката си“ и позволява на приложенията да вършат чакащата работа.

Когато са активирани условия за сън (екранът е изключен, няма зарядно устройство и, в режим на пълна дрямка, няма осезаемо движение), системата влиза в състояние на спиране, в което Това силно ограничава достъпа до мрежата, отлага нормалните аларми и спира планираните синхронизации и задачи.Всичко, което може да чака, чака.

От време на време устройството за кратко излиза от това окачване и влиза в период на поддръжкаВ този момент приложенията могат:

  • Стартиране на отложени синхронизации (например качване на чакащи снимки или актуализиране на бази данни).
  • Изпълняване на планирани задачи използване на JobScheduler или други планировчици.
  • Адресиране на отложени аларми докато Дозе беше активен.
  • Възползвайте се от моментния достъп до мрежата да изпраща и получава данни.

Интересното е, че Android ще... постепенно удължаване на периодите на почивка между периодите за поддръжкаКолкото по-дълго телефонът остава неизползван, толкова повече време прекарва в режим на заспиване и толкова по-малко време е активен, като в крайна сметка се достигат интервали от няколко часа в пълен режим на дрямка.

Устройството продължава да следи движението с детектор за значително движение (SMD) когато е в пълен режим на дрямка. Веднага щом засече, че го вдигате, премествате или включвате екрана отново, то излиза от режим на дрямка и възобновява нормалната работа на всички приложения.

Изисквания за хардуер и обслужване, за да работи Doze правилно

За да може Doze да внедри всички свои оптимизации, устройството трябва да има определени елементи, както на хардуерно, така и на системно ниво. Това е важно за разработчиците, но също така помага да се разбере защо Не всички мобилни телефони имплементират Doze по един и същи начин..

Първо, Android се нуждае от облачна услуга за съобщения, като например Firebase Cloud Messaging (FCM)Това ви позволява да получавате push известия, дори когато системата е в покой. Тези съобщения могат да служат като външни тригери, които дават на приложенията... малък времеви интервал за работа в режим на дрямкабез напълно да се деактивира режимът за пестене на батерията.

Освен това, за пълната дрямка (тази, която изисква мобилното устройство да е неподвижно) сензор за значително движение (SENSOR_TYPE_SIGNIFICANT_MOTION, SMD)Този сензор позволява на системата да определи дали устройството наистина е неподвижно на маса или нощно шкафче.

Когато мобилният телефон отговаря на тези изисквания и Дресировката е активирана:

  • С налични SMD, Пълните оптимизации на Doze (включително леките) са активирани.
  • без SMDПрилага се само лекият режим на дрямка, който се активира, когато екранът е изключен, но не и дълбокият режим, базиран на неподвижност.

На системно ниво производителите често определят определени услуги като Освобождаване от дрямка (телефония, SMS/MMS, критични системни услуги и др.), така че те да продължат да функционират дори когато устройството е „в спящ режим“. Освен това, потребителят може ръчно да премахва конкретни приложения от тези оптимизации, въпреки че това очевидно ще се отрази на живота на батерията.

Жизнен цикъл на дрямката: кога се задейства и кога се деактивира

Жизненият цикъл на Doze може да се обобщи като пътя, който устройството изминава между активното си състояние, влизането в режим на заспиване и повторното му активиране. За да може системата да счита устройството за неактивно и да инициира Doze, трябва да бъдат изпълнени редица условия. условия за влизане.

В класическия режим Deep Doze, платформата проверява основно две неща: това екранът остава изключен за определено време и устройството е неподвижноАко не е свързано и към зарядното устройство, възникват идеалните обстоятелства системата да започне да прилага ограничения за батерията.

Много е важно да се знае, че Режимът на дрямка не се прилага, когато мобилният телефон се зареждаАко е включен в контакта, системата разбира, че приоритетът не е толкова пестенето на батерия, колкото поддържането на пълноценното потребителско изживяване и активните синхронизации.

за изход от дрямкаAndroid следи няколко критерия за изход. Той се деактивира веднага щом открие:

  • Директно взаимодействие с потребителя (докоснете екрана, натиснете бутоните, отключете мобилния телефон).
  • Очевидно движение на устройството според сензорите.
  • Включване на екранадори и само да е за да видите известията.
  • Предстоящ будилник програмиран с будилник.

Самите известия, ако не събуждат екрана или не изискват взаимодействие, Те не премахват устройството Doze.Те се натрупват и се показват, когато системата влезе в период на поддръжка или когато потребителят отново вземе мобилния телефон.

Ограничения по време на режим „Дремка“ и разлики с режим „Лека дремка“

След като е в режим на дрямка, Android прилага широк набор от ограничения, за да намали консумацията на енергия. Тези ограничения ще варират в зависимост от... Пълна дузина о ел Режим на лека дрямка (въведени в Android 7.0), но те споделят основната идея: да предотвратят прекомерен „шум“ на приложенията във фонов режим.

В пълната дрямка системата налага много агресивни ограничения:

  • Няма достъп до мрежата за приложения по време на периоди на спиране, с изключение на много специфични изключения (например push известия с висок приоритет).
  • Заключването на приложенията в режим на готовност се игнориракато им пречи да държат процесора буден ненужно.
  • Нормалните аларми се отлагат, с изключение на будилници или такива, създадени с setAndAllowWhileIdle() o setExactAndAllowWhileIdle()които имат честотни ограничения за всяко приложение.
  • Не се извършват Wi-Fi сканирания или търсения на мрежи докато трае дълбокото окачване.
  • Синхронизации на SyncAdapter и задачи, планирани с JobScheduler Те се отлагат до следващия период на поддръжка.
  • Приложения, които обработват SMS и MMS Те са временно поставени в списък с разрешени, за да могат да обработват съобщения дори в режим на дрямка.

В режим „Лека дрямка“, който се задейства веднага щом изключите екрана, дори ако телефонът е преместен, ограниченията Те са малко по-мекино те остават актуални:

  • Няма неограничен достъп до мрежата за фонови задачи, освен по време на периоди на поддръжка.
  • Задачите, синхронизациите и работата във фонов режим са разграничени, макар и по-малко строго..
  • Могат да се получават съобщения в реално време (обаждания, незабавни съобщения и др.)особено ако използват съобщения с висок приоритет чрез FCM, за да реактивират временно мрежата.

Концептуалната таблица би изглеждала по следния начин: в пълен режим на дрямка телефонът се държи почти сякаш е изключен, позволявайки само push известия с висок приоритет и критични задачиВ Doze Light свързаността е по-активна, но голяма част от несъществения трафик е ограничен.

Връзка между Doze, App Standby и управление на неактивни приложения

Doze не е единственият, който се бори за живота на батерията. Android включва друга важна функция, наречена Standby Appкойто следи как се държат приложенията, които потребителят не е отварял или използвал активно известно време, и помага за идентифицирането на приложения, които консумират най-много батерия.

Докато Doze се фокусира върху общо състояние на устройствотоApp Standby се фокусира върху индивидуално поведение на всяко приложениеАко дадено приложение не се използва известно време и не отговаря на определени условия, системата го маркира като „неактивно“ и ограничава достъпа му до мрежата във фонов режим.

За да предотвратите считането на дадено приложение за неактивно поради режим на готовност на приложението, трябва да отговаря на един от тези критерии:

  • Че потребителят отворете го изрично в скорошен период.
  • Имате процес на преден план (видима дейност или легитимна услуга на преден план, като например възпроизвеждане на музика или качване на снимки).
  • Това генерира Видими известия които потребителят вижда на заключения екран или в системния трей.

Когато телефонът е в режим „Дремка“, времето, което прекарва в този режим не се брои за App StandbyПриложенията, маркирани като неактивни, обаче могат да извършват нормални дейности поне веднъж на ден, дори ако устройството остане в продължителен режим на заспиване.

Веднага щом включите телефона си в контакта, Android Ограничения за режим на готовност на приложенията за асансьори и позволява на тези неактивни приложения да си възвърнат свободния достъп до мрежата и да изпълняват отложени задачи и синхронизации.

Реално потребителско изживяване: как Doze променя ежедневието

Освен техническите подробности, въпросът, който повечето хора си задават, е: Наистина ли Doze има значение при ежедневна употреба? Отговорът, в по-голямата част от случаите, е „да“, и то доста.

На устройства като по-стария Nexus 5 или еквивалентни модели, много потребители съобщават, че след актуализиране до Android 6.0, Те можеха да оставят телефона на масата цяла нощ или за няколко часа и изтощаването на батерията беше минимално.Докато преди 10-20 зарядни точки се губеха само поради неактивност на мобилния телефон, след това спадът драстично намаля.

Тези, които използват мобилните си телефони умерено, с дълги периоди на изключен екран и стандартно използване на приложения, забелязват, че Те могат да издържат един или два пълни дни без зареждане, когато преди това беше немислимо и си струва да продължим Съвети за удължаване на живота на батериятаВъпреки това, много интензивните потребители, с екрани включени почти през цялото време, виждат по-малка разлика, тъй като Doze почти не се включва, докато те непрекъснато взаимодействат.

Недостатъкът е, че при някои телефони и конфигурации Doze може да причини Известията от приложения като Facebook, Gmail или съобщения пристигат със закъснение.Например, да сте на работа, без да получавате никакви известия за известно време, а след това, когато вземете телефона си или се приберете у дома, изведнъж да получите потоп от известия, които е трябвало да пристигнат по-рано.

В тези случаи можете да избирате Изключване на конкретни приложения от оптимизацията на батерията Това им позволява да поддържат по-реална реакция, приемайки малко по-висока консумация на енергия. Това е балансиращ акт между живота на батерията и „незабавността“ на известията.

Как да деактивирате Doze за конкретни приложения от настройките на Android

Ако имате критично важно приложение (например, служебни съобщения) и не искате Doze да го забави, Можете да го премахнете от оптимизациите на батерията без напълно да деактивирате Doze. Процесът може да се различава леко в зависимост от слоя за персонализиране, но като цяло е подобен.

Лос типични стъпки За да деактивирате Doze в приложение, трябва да направите следното:

  1. Посещение Настройки > Приложения и известия (или подобно меню на мобилния ви телефон).
  2. Кликнете върху Вижте всички приложения ако не виждате този, който ви интересува, в списъка с последните.
  3. Изберете приложението (например WhatsApp, Gmail, Facebook и др.).
  4. В детайлите на приложението въведете секцията батерия (Може да е в „Разширени“ или подобно).
  5. Кликнете върху Оптимизиране на батерията.
  6. Променете изгледа от „Неоптимизирани приложения“ на „Всички приложения“ За да видите пълния списък.
  7. Намерете желаното приложение и го докоснете.
  8. Изберете опцията „Не оптимизирайте“ и потвърдете с „Приемам“ или „Готово“.

От този момент нататък Android ще спре да прилага ограниченията за Doze към това конкретно приложение (поне по отношение на стандартната оптимизация на батерията). Важно е да не се прекалява с тази опция и да се запази за... няколко приложения, които наистина се нуждаят от товаЗащото, ако изключите твърде много, подобрението в автономността е значително намалено.

състояние на батерията на android
Свързана статия:
Здраве на батерията на Android: Пълно ръководство, най-добри приложения и съвети за поддържане на батерията ви