Google начал тестировать новую функцию, благодаря которой время автономной работы смартфонов, планшетов и ноутбуков, использующих браузер Chrome, может значительно увеличиться. Достичь этого планируют с помощью ограничения таймеров JavaScript для вкладок в фоновом режиме.
Разработчики Google провели исследование, в процессе которого оценили энергозатратность популярных веб-ресурсов в фоновом режиме. Они одновременно открыли 36 случайных фоновых вкладок, в то время как основная страница оставалась пустой, и проделали это дважды, регулируя показатели таймера JavaScript, сократив частоту их обновления до одного раза в минуту. В результате удалось выяснить, что некоторые несущественные задачи приводят к неоправданному расходу энергии батареи. К таким задачам относится, например, отслеживание позиции прокрутки, составление отчетов и анализ взаимодействия пользователя с рекламой. Ежеминутное обновление таймеров позволило увеличить время автономной работы батареи на 28%, что эквивалентно двум часам.
Google провел еще один аналогичный эксперимент, но на этот раз основная вкладка не была пустой: теперь на YouTube воспроизводилось видео в полноэкранном режиме, а функция энергосбережения была отключена, чтобы яркость дисплея автоматически не снижалась. Несмотря на активность основной вкладки, регулирование таймеров все равно помогло снизить расход батареи, но уже на 13 процентов, что составляет почти 36 минут автономной работы устройства.
В итоге Google решил внедрить функцию, активация которой ограничит частоту обновления таймеров JawaScript в фоновом режиме. Подобное решение не является инновацией: аналогичная технология используется в веб-браузере Safari. Так же, как и в Safari, таймеры в Google Chrome будут срабатывать один раз в минуту. При этом нововведение не повлияет на сайты и приложения, использующие технологию WebSockets, на основе которой, к примеру, часто функционируют чаты и мессенджеры — об этом представители Google сообщили изданию The Windows Club. Помимо этого, Google также разработал ряд сценариев, релевантный для вкладок, взаимодействие с которыми не проводится на протяжении долгого времени.
Ожидается, что новая возможность будет доступна на устройствах на базе Windows, Mac, Linux, Android и Chrome OS начиная с версии Chrome 86.