Logo ru.androidermagazine.com
Logo ru.androidermagazine.com

Функции Oreo, которые вам понравятся: пределы фонового исполнения

Оглавление:

Anonim

Ваш телефон Android позволит вам делать много вещей одновременно, даже если все они могут отсутствовать на вашем экране. Помимо системных процессов, которые могут выполнять такие вещи, как проверка вашего местоположения или проверка наличия новой электронной почты, приложения можно открывать, а затем запускать в фоновом режиме, пока мы делаем что-то еще.

Хороший пример - когда вы открываете свой любимый музыкальный проигрыватель и запускаете список воспроизведения для прослушивания, когда вы проверяете Facebook или просматриваете веб-страницы. Музыкальное приложение работает в фоновом режиме, делает свое дело, пока вы смотрите на что-то еще.

Но некоторые приложения могут быть отправлены полностью в фоновом режиме. В нашем примере пределов исполнения фона Oreo музыкальный проигрыватель не отображается на экране и работает как фоновое приложение, но он все еще взаимодействует с нами и играет музыку. К другим приложениям, которые мы открыли и от которых отказались, следует относиться иначе, потому что мы ничего с ними не делаем.

Это может повлиять на ограниченные ресурсы вашего телефона. Работающие приложения могут использовать оперативную память и отнимать время обработки у других приложений, которым нужен поворот или даже приложение, которое вы используете в данный момент на переднем плане (то, что вы видите на экране.) В то время как Android всегда имел некоторые ограничения на то, что приложение может Делая это, пока его нет на экране, Oreo вводит более разумные ограничения, помогающие экономить системные ресурсы и время автономной работы, определяя, когда приложение действительно находится в фоновом режиме и может бездействовать, а затем сохранять его тихим, но готовым к повторному использованию.

Хотя это видео предназначено только для Android-нуг, оно отлично объясняет, как фоновые сервисы могут влиять на приложения, которые вы активно используете, и способы контроля.

Что нового или измененного в Oreo

  • Ограничения фонового обслуживания. Теперь система выполняет несколько рутинных проверок, чтобы определить, можно ли считать приложение фоновым. Он проверяет, что приложение или какие-либо действия (вещи, которые приложение может выполнять или инициировать) не отображаются на экране. Затем он проверяет, подключено ли к нему другое приложение или использует какую-либо информацию из него, и, наконец, проверяет несколько высокоприоритетных служб, например, возможность работать в качестве клавиатуры или активно прослушивать голосовой ввод.

Если ничего из этого не соответствует действительности, приложение считается работающим в фоновом режиме. Когда приложение в первый раз рассматривается как фоновое, оно имеет короткое окно, в котором ему разрешено делать свое дело на тот случай, если ему нужно запустить что-то, что переместит его в приложение или службу переднего плана. По истечении этого времени приложение вынуждено бездействовать. Свободные приложения также периодически получают короткие окна на тот случай, если им нужно подключиться или запустить службы, но, кроме тех случаев, когда они работают, они используют очень мало ресурсов, пока мы не переключимся на них.

  • Ограничения на трансляцию. Трансляции осуществляются системой, когда происходят определенные события. Например, когда вы включаете и выключаете свой телефонный режим, отправляется широковещательная рассылка, чтобы приложения знали, что произошло. Разработчики могут настроить свои приложения для прослушивания определенных трансляций и написания кода, чтобы приложения что-то делали, когда они происходят. Если приложение прослушивает широковещательные рассылки, то при каждой отправке приложение использует системные ресурсы, чтобы узнать, требуется ли какое-либо действие.

Приложения, созданные для Oreo, больше не могут регистрироваться для прослушивания широковещательных сообщений, которые непосредственно не нацелены на само приложение, если они не запущены и не запущены (не в фоновом режиме в соответствии с правилами выше). Эти изменения начались с Android N, а изменения в Oreo немного более строгие. Поскольку это может ограничить то, что может захотеть сделать разработчик, были разработаны новые инструменты для планирования конкретных заданий с использованием их собственных процессов приложений. Есть также несколько передач, освобожденных от всего этого, например, когда меняется часовой пояс или телефон подключен к зарядному устройству. Каждое приложение может их слушать и реагировать соответственно.

Ограничивая то, как приложение может слушать и что оно может слушать, приложения, которые были определены как фоновые, не проснутся, чтобы увидеть, нужно ли им что-либо делать так часто. «Спящие» приложения используют гораздо меньше ресурсов.

Почему тебе это понравится

Мы хотим, чтобы наши телефоны делали много вещей. Но независимо от того, что мы просим это сделать, пока мы смотрим на экран, мы ожидаем, что все будет гладко и отзывчиво.

Мы все чувствовали разочарование, возникающее из-за задержки клавиатуры, и это не очень хороший опыт. Удерживая узкие части приложений, на которые мы не смотрим, память, вычислительная мощность и время автономной работы используются более эффективно, и мы увидим меньше таких вещей, как лаги клавиатуры. Конечный пользователь - это мы! - здесь не нужно ничего делать, потому что эти изменения являются частью системы. Более того, старые приложения, которые не были созданы с учетом Oreo, можно настроить на соблюдение этих правил на странице настроек приложений.

Подобные изменения сочетаются с отличным оборудованием, которое мы видим каждый год, и это означает, что ваш телефон может делать то, о чем вы просите, еще лучше!