Перестаньте закрывать приложения на iPhone. Это мешает системе работать эффективно

Павел avatar | 46
FavoriteLoading В закладки

Apple с самого запуска iPhone была против принудительного завершения работы программы. Объясняю, почему.

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

Ну, ладно, это их дело.

Но весь есть особые персонажи, которые, глядя в мой iPhone начинают возмущаться и причитать фразой «а чего у тебя столько всего отрыто?».

Ну, во-первых, это моё дело.

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

Есть универсальное правило, которое используют даже в Android: приложения не надо закрывать.

Сейчас поставим точку, почему нужно оставить в покое отрытые приложения на iPhone и iPad. И почему кнопку «закрыть всё» ждут уже 17 лет, но вряд ли дождутся.

Это как если перезагружать телефон

В основе операционных систем iPad и Apple Vision Pro лежит iOS, чтобы те могли работать дольше. И это при том, что в обоих устройствах стоят чипы из Mac.

Так происходит, потому что при разработке iOS приложениям изначально запретили полноценно работать в фоне.

Это убивает сразу двух зайцев: программа работает гладко, а батарея не расходуется на невидимые и не особо нужные процессы.

Максимально примитивно опишу матчасть.

У приложения в iOS есть три основных состояния:

  • Запуск
  • Активное
  • Фоновое.
  • «Запуск» активирует фреймворк UIKit, в ходе чего программа запускается по правилам iOS.

    Запуск делится на два вида: «активация» и «возобновление». В первом случае вы загружаете приложение с нуля, во втором оно просыпается из покинутого вами состояния, не успев полностью отключиться.

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


    Так iOS меняет состояние приложения. Источник: Apple

    «Активное» состояние это когда приложение у вас перед глазами и выполняет нужные задачи.

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

    В iOS встроена специальная система «сохранения интерфейса для перезапуска», которая помогает системе в оптимизированном виде хранить экран приложения, на котором вы остановились.


    Состояние приложения в зависимости от того, свернуто оно или нет. Источник: Apple

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

    При открытии вы заставляете чип заново тратить ресурсы на запись кэша и проводить инициализацию (первичный запуск), в которую входят десятки шагов.

    А когда вы сворачиваете приложение, оно моментально переходит в «фоновое» состояние.


    Процессы во время запуска приложения в iOS. Источник: Apple

    Apple называет запуск полного цикла тёплым, а возобновление работы – холодным. Не знаю, в чём настоящая причина таких прилагательных, но тут будто проходит аналогия с необходимым количеством энергии.

    Запуская программу заново, процессор нагреется больше, чем если бы вы просто развернули ранее запущенное приложение.

    Самая простая аналогия.

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

    iOS безжалостно удаляет ненужный кэш сама

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

    С практической точки зрения вы тоже себе делаете хуже.

    Разворачивание приложения происходит моментально, а запуск занимает несколько секунд. Получается, что

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


    iOS сама удаляет даже скриншоты предпросмотра, если они отнимают нужные ресурсы

    iOS автоматически отключает приложения, если ресурсов не хватает. Это самодостаточная система, которая даже процессор замедлит во избежания перегрева, если нужно.

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

    Откуда у меня эти данные? Глава по разработке ПО Крейг Федериги рассказывал об этом в 2016 году читателю 9to5mac. Приблизительно в то же время информацию подтвердил глава по платформам и экосистемам Google Хироси Локхаймер, отвечающий за Android. Да и сама Apple рекомендует закрыть приложение, если «не отвечает или кажется, что оно зависло».

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

    В тему: 20 рабочих советов, как увеличить время работы iPhone от аккумулятора. Пробуйте

    1 Звезд2 Звезды3 Звезды4 Звезды5 Звезд (60 голосов, общий рейтинг: 4.33 из 5)
    undefined
    iPhones.ru
    Apple с самого запуска iPhone была против принудительного завершения работы программы. Объясняю, почему. Сотню раз видел, как мои друзья и люди в метро уже выученным механическим движением судорожно выкидывают карточки открытых приложений за пределы экрана iPhone, чтобы всё закрыть. 
Ну, ладно, это их дело. Но весь есть особые персонажи, которые, глядя в мой iPhone начинают...
    Прокомментировать

    🙈 Комментарии 46

    1. fimoz avatar
      fimoz23 февраля в 12:33
      20

      Я не перестану, тк мне их количество попросту мешает в трее

      Andrey-lights avatar
      Andrey-lights23 февраля в 12:50
      7

      @fimoz, я с тобой

      AirPods Max2024 avatar
      AirPods Max202423 февраля в 13:20
      0

      @fimoz, Я закрываю лишь телеграмм и tiktok

      Bazily avatar
      Bazily23 февраля в 15:57
      1

      @fimoz, чем мешает, как?

      fimoz avatar
      fimoz24 февраля в 10:16
      0

      @Bazily, у вас какой андроид?

      redupcoming avatar
      redupcoming29 февраля в 3:11
      0

      @fimoz, так в 2024 это не проблема android, а вообще всех платформ с частым обновлением в фоне, даже фззду.

      redupcoming avatar
      redupcoming23 февраля в 22:01
      3

      @fimoz, вот абсолютно согласен, никакого комфорта и удобства от свалки программ и вкладок – нет.

      C0nfy avatar
      C0nfy27 февраля в 15:14
      0

      @fimoz, отключаю спотифай и телеграм. ибо жрут много батарейку в фоне

    2. rukamaster avatar
      rukamaster23 февраля в 12:45
      9

      Ага, я так пару раз телегу забыл закрыть, так за ночь батарейку почти под ноль сажает

    3. Виктор avatar
      Виктор23 февраля в 12:47
      0

      Идеально было бы добавить настройку “закрывать приложения через …”, как сделали в Safari с открытимы вкладками. Если не пользуешься приложением 2 дня .. 7 дней .. 30 дней, то наверняка это был одноразовый запуск, чтобы освободить ресурсы “хоть и минимально используемые”.

      haxanus avatar
      haxanus23 февраля в 19:52
      1

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

    4. mza avatar
      mza23 февраля в 12:50
      4

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

      Matthew avatar
      Matthew23 февраля в 13:04
      3

      @mza, потому что иногда есл и приложение тупит, лагает и тд, то его можно выгрузить и снова запустить, после чего все работает как надо с вероятностью 99%
      Например актуальное приложение альфабанка запускается только со второго раза (не у одного меня). Обязательно нужно выгрузить один раз из памяти и снова открыть, видимо что-то намудрили разработчики

      Megabass avatar
      Megabass23 февраля в 13:28
      0

      @mza, а лучше дать пользователю возможность выбора – не закрывать или закрывать через выстланный промежуток времени :)

    5. dimixx avatar
      dimixx23 февраля в 12:51
      2

      Да всем плевать на то, сколько энергии сжирает перезапуск! Многие приложения просто умудряются пи…ить личные данные даже с выключенными параметрами отказа предоставлять те или иные данные!
      Ну, и потом когда открыто штук 20-30 уже вообще неудобно по ним перелистываться

    6. andrey-m86 avatar
      andrey-m8623 февраля в 13:08
      19

      “Ну, во-первых, это моё дело.”
      Ну так ты со “своим делом” не лезь в чужие -=))

    7. fimoz avatar
      fimoz23 февраля в 13:23
      13

      [quote]Есть универсальное правило, которое используют даже в Android: приложения не надо.[/quote]

      🤔

      Andy_professional avatar
      Andy_professional23 февраля в 13:34
      8

      @fimoz, верно, “приложения не надо” и точка.

      haxanus avatar
      haxanus23 февраля в 19:53
      4

      @fimoz, андроид не надо.

      Siberian84 avatar
      Siberian8423 февраля в 19:55
      1

      @fimoz, местным авторам похрен на грамматику, пунктуацию, синтаксис, логику. На всё. Раньше был и годные материалы. Сейчас скатилось в кликбейт и рекламный навоз. Зачем-то жду, когда вернутся годные авторские статьи.

      iBarmalei avatar
      iBarmalei24 февраля в 1:02
      0

      @Siberian84, годные статьи ушли вместе с Артуром

    8. denisww avatar
      denisww23 февраля в 14:13
      1

      Если не хватает памяти , аппле легко дропает все и не парится

    9. icemanea avatar
      icemanea23 февраля в 14:32
      1

      Спасибо, навели на мысль нового приложения!))
      Для того, у кого чешутся руки, рандомные карточки, которые можно выбрасывать вверх)))

      Ммм… фоточки конечно генерирует нейросеть))

      ПС: открывать недавние программы гораздо удобнее через Spotlight!

      Кирилл avatar
      Кирилл23 февраля в 14:39
      7

      @icemanea, что за полубессознательный поток мыслей 😂

    10. Jacob Montana avatar
      Jacob Montana23 февраля в 14:46
      3

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

    11. aymac avatar
      aymac23 февраля в 14:51
      1

      При всем уважении к автору заголовка, напрашивается логическая пародия
      “Перестаньте открывать приложения на iPhone. Это мешает системе работать эффективно” :D

    12. Alex6600 avatar
      Alex660023 февраля в 14:59
      2

      Очень часто бывают ситуации на разных устройствах ipad или iphone, когда приложения начинают тупить и не возможно открыть нужную страницу, вернуться назад или ещё что-нибудь в этом роде, ты его закрываешь открываешь заново, а оно открывается с тем же “глюком”. И вот тут действительно помогает выкидывание из памяти. И если приложение не потребляет энергию в памяти, то выгруженное из памяти оно её точно потреблять не будет. И утверждение что якобы ios сама выгружает всё ненужное, для меня сомнительно. Так как не раз наблюдал у знакомых, которых “что-то не работает”, чуть ли не по три десятка приложений, которые они будучи неактивными пользователями, явно должны были включать минимум в течении недели, а то и двух.

      Ёжик avatar
      Ёжик23 февраля в 23:04
      0

      @Alex6600, возможность закрыть приложение и сделано для того, если оно зависло или работает неправильно. То, что вы описали как “выкидывание из памяти” – это и есть закрытие приложение, но если вы вышли на домашний экран или переключились на другое приложение, то предыдущее просто “засыпает” и если оно до этого глючило, то после “просыпания” (повторное открытие или переключение на него) продолжит это делать пока не закроешь.

    13. catfelix avatar
      catfelix23 февраля в 15:13
      2

      Приложения сразу открываются из трея только 2 или 3 последних, а более ранние занова загружаются, хоть и оставались в трее. Так что статья ни о чём. (11 про макс 6/256 Гб)

      iggikkk avatar
      iggikkk23 февраля в 18:42
      0

      @catfelix, это что за 11 pro max с 6 оперативки? Там 4 как бы. 6 это 12/13/14

      catfelix avatar
      catfelix23 февраля в 19:20
      0

      @iggikkk, 4 гига в обычном 11, а в про и про макс 6 гигов

      Russtik avatar
      Russtik23 февраля в 19:45
      3

      @catfelix, и там 4 гига

      Ёжик avatar
      Ёжик23 февраля в 23:06
      0

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

    14. 8 avatar
      823 февраля в 15:50
      0

      Дурка:
      – Человек с iPhone бесконечно закрывает приложения, врач говорит, что он так делает уже 9 месяц подряд :)
      – Другой врач советует дать ему смартфон на андроид, что бы он сразу закрыл все.
      – К сожалению пациент Яблочный маньяк, и его не купить на андроид.

    15. Андрей avatar
      Андрей23 февраля в 16:03
      3

      Яндекс карты в фоне жрут батарею, например

      Bkmz666 avatar
      Bkmz66623 февраля в 16:19
      0

      @Андрей, а если там просто скриншоты они жрут оперативку…

      Ёжик avatar
      Ёжик23 февраля в 23:10
      0

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

      Андрей avatar
      Андрей24 февраля в 0:23
      0

      @Ёжик, я так и сделал. Не помогает

    16. koyzin avatar
      koyzin23 февраля в 16:22
      0

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

    17. 13dots avatar
      13dots23 февраля в 16:33
      2

      Всегда всё выгружаю поскольку не люблю хаос с кучей открытых приложений. Только основные и их немного. Тоже самое со вкладками в браузере.

      Bsd avatar
      Bsd23 февраля в 16:46
      1

      @13dots, они не открыты. Когда вы сворачиваете приложение, оно лишь некоторое время висит в памяти, и потом полностью выгружается системой. Нет никакого смысла закрывать приложения.

      А вкладки браузера есть смысл закрывать, особенно на десктопе

      whats_your_problem avatar
      whats_your_problem23 февраля в 18:00
      0

      @Bsd, 2024 год так-то, тот же хром уже давно научился в заморозку вкладок и выгрузку из памяти. Если в них зайти, они заново загружаются.

    18. RedIz avatar
      RedIz23 февраля в 23:33
      1

      Завершаю приложения не потому что жрут батарею, а потому что они больше не нужны в текущей сессии использования смартфона. Часто оставляю в памяти приложения как напоминания о том, что позже в них нужно что-то сделать. Всё точно также, как при работе с маком.

    19. dozerzaz avatar
      dozerzaz23 февраля в 23:39
      0

      Как же их не закрывать когда телефон из за чего то может безбожно греться как кипятильник, и сложно понять из за чего (редко но все же)
      А в целом да, это вам не андроид

    20. Cadmus avatar
      Cadmus27 февраля в 14:26
      0

      Телега нет нет пашет в фоне, из-за чего за ночь 3-6% теряет. А так 5 лет ничего не закрывал, а на 14 и 15 айфоне стал периодически закрывать Яндекс и телегу.

    21. Alex638 avatar
      Alex63828 февраля в 15:12
      0

      Автор, ты еще напиши, что не надо скотчем заклеивать камеры и микрофон. Типа за нами американцы не следят.

    Вы должны авторизоваться или зарегистрироваться для комментирования.

    Нашли орфографическую ошибку в новости?

    Выделите ее мышью и нажмите Ctrl+Enter.

    Как установить аватар в комментариях?

    Ответ вот здесь