Почему это лучше для iPhone батареи не закрывать приложения?

Я, видимо, знаю, что это не хорошая идея, чтобы закрыть приложения на вашем iPhone для экономии заряда батареи. Я читал вопросы и ответы, как https://apple.stackexchange.com/q/237708/168832 но это все еще не совсем со мной. Иногда я находил более 50 приложений, так **** не закрывать их нет смысла.

Может, я немного старой куренка, и вы просто не можете научить старых собак новым трюкам, но может кто-нибудь здесь объяснить, почему лучше всего держать все эти приложения работают? И когда я говорю “объяснить”, я имею в виду с точки зрения непрофессионала, так что я могу понять.

Комментарии к вопросу (9)
Решение

Вы не одиноки. Люди просто привыкли к их настольному компьютеру привычки, и это понятно, они переносят эти привычки на их iphone'ов и iPads. Однако, я попробую объяснить это с помощью аналогии: Представь, что это жаркий день, и вы находитесь за пределами садоводства. Ты захочешь пить, так вы идите на кухню, возьмите большой стакан, положил лед в нем, и заполнить его водой. Затем вы выпиваете половину и пустой остаток в раковину, прежде чем вернуться на улицу. Не долго позже, вы снова хотите пить, так что иди обратно на кухню, взять один и тот же стакан, положить лед, и налить воды. Опять вы пьете только половина и пустой остаток в раковину! Выше документооборот просто не имеет смысла. Почему бы тебе не взять стекло снаружи с вами? И, вы не только тратите воды на опорожнение, но вы тратите больше времени и энергии становится снова водой. Аналогичным образом, когда вы закрыть приложение на самом деле вы используете некоторые батареи в процессе (например, очистив его от оперативной памяти и т. д.), а затем еще раз позже, когда вы снова запустите его и загрузить его обратно в память. Так, для огромного большинства время лучше оставить открытыми приложениями. Хотя они открыты, они просто сидят в тип суспендировать режим, не используя никаких батарей. Да, приложение по-прежнему загружается в ОЗУ и с Космос, но это на самом деле не делает ничего - он просто лежал в состоянии покоя. И, потому что он не использует каких-либо заряда батареи в таком состоянии, нет никаких преимуществ, чтобы бросить его от батареи сохранения точки зрения - особенно если это приложение, вы знаете, что вы будете использовать снова и снова на протяжении дня. Там же реально никаких преимуществ, чтобы заставить бросить приложение, потому что прошивкой сама будет делать это за вас, если/когда это необходимо для того, чтобы освободить оперативную память. Так что если у вас есть 50 открытых приложений и они остаются открытыми, то iOS не толкали, по мере необходимости, чтобы закрыть любое из них, чтобы освободить память. Теперь, как и все, всегда есть исключения из правил (например, приложения для выполнения фоновых задач). Пример это тот, который играет музыку, в то время как вы делаете другие вещи с вашего телефона, либо загрузив контент в фоновом режиме, или тот, который считает, сколько шагов вы ходить через день, и т. д. Тем не менее, iOS имеет чрезвычайно эффективный процесс Управление фоновые приложения/задачи и если вы решили бросить этих, по сути, ты говоришь, что не доверяешь операционную систему, чтобы сделать его работу должным образом. Поэтому, не стесняйтесь бросить ваш приложений, когда вам нужно (например, потому что он завис и т. д.), Но не делайте это для экономии заряда аккумулятора. В самом деле, если вы это сделаете, вы будете достигать обратное и, используя больше энергии в течение дня! Резюме**

  • Нужно только, чтобы завершить приложения, если они'повторно не работает должным образом (например, приложения заморозил, это'т отображаться правильно и т. д.).

  • Приложения, перечисленные в приложение переключатель не обязательно работает - на самом деле большинство из них не работает на всех.

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

    приостановлено - приложение в фоновом режиме, но не выполняет код. Система перемещает приложения в это состояние автоматически и не уведомлять их, прежде чем делать так. В то время как приостановлено, приложение остается в памяти, но не выполняет какой-либо код. При возникновении нехватки памяти, система может очистить приостановленных приложений без предварительного уведомления, чтобы сделать больше места на переднем плане. Источник см таблица 2-3 в течение первой ссылке в конце этого ответа.<БР> <БР>

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

  • С точки зрения приложений, работающих в фоновом режиме, вы можете контролировать, какие приложения разрешено (если они'заново открытая), перейдя в Настройки > Общие > фоновое обновление приложений. (Примечание: только потому, что вы видите приложения, перечисленные здесь, не'Т означает, что она будет работать в фоновом режиме, но при отключении его здесь, значит, он наверняка выиграл'т!)

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

  1. Для получения дополнительной информации о различных состояниях, приложение может быть, обратитесь к Apple'ы руководство по программированию приложения для iOS: состояние приложения.
  2. Для получения дополнительной информации о приложения, работающие в фоновом режиме, обратитесь к Apple'ы руководство по программированию приложения для iOS: фоновый.
Комментарии (19)

Предоставляемые ответы являются точными, я просто хочу уточнить с точки зрения разработчика iOS.

iOS создана для того, чтобы управлять как можно больше вещей, так что вы (и разработчики) не придется беспокоиться о них. Конечным результатом является somewhat последовательный подход во всех приложениях, в том числе от Apple (хотя иногда сама Apple сокращения некоторых углах).

Это, как говорится, предпосылка:

  • для iOS знает больше о памяти, чем нам. Он знает, сколько он, и сколько он должен (до определенной степени).
  • iOS имеет полный контроль над памятью; он имеет последнее слово о том, кто чем пользуется.
  • Если прошивкой нужно памяти, она будет найти его, и это обычно делается путем убийства других процессов, которые были неактивны в течение некоторого времени (и есть много правил за кулисами, мы не знаем их всех, и мы действительно не беспокоиться о них).
  • Все процессор (ЦП) не требуется энергия. Абсолютно все. Не забывайте, что компьютеры-это просто очень крошечный электрон емкостях, перемещать их в очень маленьких пространствах.
  • Когда убили приложение, есть некоторые согласованные протоколы (договоры), которые определяют, что должно быть сделано. iOS применяет и переносит эти протоколы. Но работа должна быть выполнена, она не бесплатная и, конечно, не всегда дешево (это действительно зависит от того, какое приложение).

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

Правда в том, что на iOS, это почти никогда не так. Когда вы нажимаете кнопку Домой, приложение приостанавливается и он больше не использует ресурсы другого приложения, которое может понадобиться. Если новое приложение (или даже iOS), что должен памяти, она будет заботиться о нем сама по себе, но только если это необходимо.

Ты закрываешь приложения, снова и снова, заставляют iOS, чтобы сделать что potentially expensive задача действительно выгрузки приложения, сохраняя его состояние, а что нет, с дополнительной проблемой, что, когда вы вновь открыть приложение, все это должно быть отменено и, в зависимости от сложности приложения, много вещей, которые должны быть считаны из памяти, до в основную память телефона, и так далее. Все это лишняя работа, можно было бы избежать, если вы просто пусть приложение оставаться в “подвешенном” состоянии.

** Однако ...

В некоторых случаях (а они бывают редко, но не донельзя редко), вы хотите убить приложения, которые вели себя плохо. Примерами являются (но не ограничиваясь): приложения, которые имеют дело с фоновым звуком, или асинхронный услуги, как место (где приложение запрашивает местоположение и iOS должны пойти и поспрашивать где есть, например, при стрельбе GPS, если требуется), потоковое видео и т. д.

У меня было бесчисленное множество экземпляров приложения, такие как Lyft, Юнайтед Эйрлайнс, даже в Twitter, что в конечном итоге в разбитом состоянии (или просто не работает должным образом), либо потому, что ты в плохой сети (иос действительно плохо оправляется от плохой сети в течение последних 3-4 версиях) или сеть просто не реагируют должным образом.

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

И если это смущает, я могу дать вам аналогию автомобиля, потому что мы склонны делать все время.

Аналогия Автомобиль

<суб>я знаю, что автомобиля технология продвинулась, и это уже не хороший пример, но играть со мной.</суб>

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

Вы закрываете приложения, является эквивалентом человека, превратив автомобиль в каждом стоп-сигнале. А не просто позволить ему работать на холостом ходу, пока снова не понадобится, обычно через несколько секунд.

Аналогия не подходит, ибо правда, простоя вагонов по-прежнему использовать топливо, в то время как приостановлено приложения Не; однако, в глазах телефоне, они не использование памяти/батареи обзоры (пока они не имеют фоновой обработки каких-либо активных, очевидно).

Вы по сути превращая ваш двигатель каждый раз, когда вы убиваете приложение, и вы не позволяя прошивкой “умный” механизм холостого хода вашего двигателя, заботиться о нем, поэтому, когда загорается зеленый свет, вы можете просто нажать на педаль акселератора и двигатель работает faster, чем если было бы 100% остановился. Запуск двигателя из остановленного состояния, а также потребляет больше электроэнергии, чем топлива, нужно крутить стартер, чтобы двигатель можно сгибать, впрыском топлива и искры создали, так что... это много работы за кулисами. Приложения, такие как двигатели. :)

Комментарии (3)
  1. Если вы не принудительно выключить приложение полностью, а затем, когда вам нужно повторно открыть его на более позднее время, издержки, связанные с запуском нового экземпляра приложения, больше процессора и энергоемкого, чем просто переход от одного приложения к другому.
  2. Если приложение сидит в памяти, если он на самом деле построен, чтобы работать в фоновом режиме, это, как правило, приостанавливается или убил и не употреблять любого цикла процессора (как правило). Если это'ы довольно простое приложение, тогда он будет просто сидеть там с использованием памяти. В таком случае состояние приложения сохраняется еще где-то (на запоминающее устройство в случае Android), так что состояние приложения могут быть восстановлены позже. Чтобы дать вам идею, достаточно длинное Неотправленное сообщение, что я писал в приложение Viber на мой телефон выжил после телефон выключился из-за истощения батареи. После перезагрузки телефона, то Вибер, я нашел сообщение ждет меня, чтобы отправить его. Аллилуйя.
  3. В зависимости от вашего чипа памяти, то ли он содержит нулей или единиц не принесет каких-либо существенных различий в потреблении электроэнергии. Так держать материал в памяти не выиграл'т значительно сэкономить заряд батареи.
  4. Когда приложение находится в очень глубокий сон (Ребята, пожалуйста, подтвердите это), только ссылка на него будет отображаться в переключателе приложений, как снимок последнего экрана, который был виден из него, прежде чем под. Я говорю это потому, что в один прекрасный день, я решил закрыть все приложения на моем iPad, и я был удивлен количеством приложений, пришлось закрыть. Это было более 60 приложений. Они не могут быть все, хранящиеся в памяти устройства. Я видел некоторые приложения, что были использованы несколько месяцев назад.

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

Эта аналогия ИМО похожие на памяти экономить миф.

Комментарии (0)

Просто бросать разные мнения там ради обсуждения. Эта концепция имеет определенную степень правды, но только у вас есть определенное количество открытых приложений, вы'повторно, вероятно, собирается начать видя уменьшение доходов от учета приложений приостановлена.

Чем больше приложений у вас открыто, тем больше памяти будет привыкнуть, естественно. Как правило, каждое приложение в память разделена в памяти само приложение на самом деле использую в настоящее время, памяти что приложение хочет иметь под рукой, и память операционная система фактически допущен приложение, чтобы использовать, который дает вам окончательный объем памяти, используемого приложением. Причину приложение поддерживает отдельная часть этой памяти как памяти он хочет использовать, потому что приложение, возможно, потребуется, чтобы вырастить это's в куче, но это вовсе'т обязательно хочу сделать это вот так сразу, потому что это'ы плохо для сборщика мусора, чтобы иметь большие кучи (большие кучи = больше мусора коллекций), так что приложение будет выделить часть памяти не используется, но что можно использовать приложение исключительно в случае необходимости.

Говорят, операционной системы позволяет мое приложение до 700 МБ, и приложения установить'ы в сторону 300 Мб, что памяти для себя, оставив 400мб там для моего приложения, чтобы использовать, если он хочет, а затем другое приложение открывает и нуждается в некоторой памяти; ОС смотрит на всех различных приложений, и решает, если это'ы хорошо, чтобы вытащить память из другого приложения и использовать его для новых приложений, в этом случае он может решить взять 150 МБ из моих приложений позволило памяти и дать это новое приложение, требующее памяти, чтобы быть заменены, чтобы дать новые приложения памяти пользоваться (думать об этом как о перераспределении средств в бизнес) ну, чем больше приложений у вас открыто, тем больше работы операционной системы, чтобы сделать, чтобы на самом деле решить, какое приложение'ютером его выкачиваю, чтобы дать новое приложение памяти.

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

Теперь заметьте, не учитывает, что, если вы действительно не убить приложения, там могут быть фоновые службы запущены, что будет съедать вычислительной мощности, например, уведомления установлен, чтобы уведомить вас по таймеру и т. д. С другой стороны, некоторые приложения Дон'т использовать правда фоновая служба, и на самом деле использовать push-уведомления от службы, как военнослужащих, которые Дон'т требуют, чтобы приложение, чтобы быть открытыми в любой момент.

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

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

Источники:

Сгэн сборщик мусора для моно: http://www.mono-project.com/docs/advanced/garbage-collector/sgen/

Обзор профилировщик памяти как для iOS, так и Android приложений Xamarin, который показывает, как память управляется приложением (рабочий набор, отдельный байт, памяти, выделенный и т. д.) https://blog.xamarin.com/say-hello-to-the-xamarin-profiler/

Комментарии (12)

Чистый срез версия: Это лучше, потому что ОС была разработана, чтобы сделать его лучше до того, что пользователь захочет сохранить приложения на (или в том, что "приостановлено" и государство) для того, чтобы собрать больше информации о ваших действиях[*] позже, если необходимо.

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


[*] Подробно остановиться на сборе данных о вас частью... приложения, которые хранятся в памяти может быть либо на "приостановлено" или активным в фоновом режиме. Вы, как владелец устройства может't знать, (если вы не'т и знания, и некоторых других приложений для активного использования сканирования процессора) говорит, что приложение на самом деле делает. С точки зрения безопасности Я'д советую закрыть любое приложение, что вы'т собираюсь использовать в течение следующих 10 минут выкл.

P. S. Данная практика выполняется на устройствах Android, а также пож ...

Комментарии (4)