Чому не варто закривати програми в iOS

Всілякі техно-міфи і забобони міцно увійшли в щоденне життя сучасного користувача. І мова йде не про постукування по дереву, навіть якщо ваш смартфон - Motorola X з дерев'яною кришкою. Пережитки минулого, що дісталися нам від систем на зразок Symbian або Windows Mobile, досі не дають спокою «юзерам», однак якщо для тієї ж Android деякі з них можуть бути актуальними в силу особливостей архітектури, то система iOS справляється з порушниками спокою сама. Причому - досить успішно.


На написання цього матеріалу, який багатьом може здатися чимось очевидним або навіть повторюваним, автора спонукало практично щоденне спостереження однієї і тієї ж картини: iPod, iPhone або iPad користувач двічі натискає на кнопку Home і «скидається» програми, перш ніж заблокувати свій гаджет. Проблема в тому, що це заняття зазвичай є марною тратою часу, і давайте розберемося, чому.


Багатозадачність - поняття, вибачте за словесний каламбур, багатозадачне саме по собі. Минулого тижня тому конференції WWDC цим звучним словом назвали новий режим роботи з iPad, при якому на екрані комфортно розміщується кілька вікон. Однак у більшості з нас згадка цього терміну в комп'ютерному контексті асоціюється з кількома завданнями, одночасно виконуваними тим чи іншим гаджетом. Реалізація цієї функції різниться від платформи до платформи, але загалом і загалом все зводиться до одного: ви можете працювати з однією програмою, в той час як інша виконується в фоновому («згорнутому») режимі. Принципи роботи мобільних систем минулого і персональних комп'ютерів сильно вплинули на аудиторію звиклих до останніх користувачів сучасної техніки, породивши безліч домислів і помилок. Одним з таких стереотипів і є необхідність «прибирати» програми з панелі перемикання на iOS. У чому ж справа?

Розподіл ресурсів у системі iOS відбувається автоматично, і кожній програмі доступні п'ять станів:

  • Активно: додаток працює.
  • Неактивно: програма запущена і знаходиться в фоновому режимі, але не реєструє події (наприклад, якщо пристрій переведено в режим сну з екрану програми).
  • Режим тла: програма прибрана з екрану, але продовжує виконуватися в згортаному вигляді.
  • Зупинено: програма знаходиться в пам'яті, але не виконується.
  • Не запущено: програму було вилучено зі списку активних або просто не запущено.

При натисканні кнопки Home з екрану програми останнє переходить зі стану «активно» в стан «фоновий режим». Тут йому надається короткий відрізок часу (максимум 10 хвилин за спеціальним запитом), щоб завершити виконання поточних завдань. Після цього більшості додатків присвоюється статус «зупинено». Це дозволяє швидко відкрити програму, не вимагаючи повторного завантаження її даних в оперативну пам'ять. Ніякі обчислювальні або акумуляторні ресурси в даному випадку не задіяні. По суті справи, видалення додатка з ОЗП подовжує процедуру запуску, і хоча в більшості випадків їм можна знехтувати, цей наслідок призводить нас до двох основних тез: а) вилучення іконок програм з панелі багатозадачності як мінімум не збільшує час автономної роботи або швидкість роботи пристрою і б) сама панель відображає не працюють в даний момент, а лише недавно використані програми. У разі ж нестачі пам'яті система просто переведе непотрібні програми в режим «не запущено».


Втім, з будь-якого правила бувають винятки, і деякі категорії додатків можуть проявляти активність після згортання. До таких належать, наприклад, програми для запису і відтворення звуку (диктофони, аудіоплеєри тощо), навігаційне та інше ПЗ, що визначає місце розташування пристрою у фоновому режимі, а також різні рішення для VoIP, які очікують вхідних подій - повідомлень, дзвінків тощо. Не підпорядковуються загальним правилам і деякі стандартні компоненти iOS, наприклад поштовий клієнт Mail. Для підтримуваних програм можна також включити опцію фонового оновлення даних, що з'явилася в сьомій версії «яблучної» системи. Це дозволить автоматично перевіряти наявність нової інформації, завантажувати оновлення або завантажувати оновлений контент у фоновому режимі при отриманні push-повідомлень. Але навіть така поведінка, якщо мова не йде про музичний плеєр, що працює навігації або «грає», навряд чи позначиться на роботі пристрою серйозним чином, оскільки така активність додатків регулюється самою iOS. У двох згаданих винятках (навігація і музика) вона позначається значком геолокації в рядку стану (біля індикатора батареї) і включеним відтворенням у Пункті управління або на екрані блокування. Випадки збоїв відбуваються досить рідко навіть серед сторонніх програм. Особливо на цьому терені колись відрізнявся фірмовий клієнт Facebook, налаштований таким чином, що при значній зміні положення пристрою і включених службах геолокації запитував місце розташування автоматично, чим міг зменшити час роботи гаджета від батареї. Однак такі недоліки на сьогоднішній день зустрічаються нечасто, а сама проблема вирішувалася легко: у налаштуваннях геолокації на iOS 8 можна встановити доступ до програми GPS тільки під час її використання.


Що ж, пора сформулювати основну думку. Безумовно, деякі з дорогих читачів можуть не погодитися, спираючись на суб'єктивні спостереження, проте в більшості випадків висновок простий: закривати програми в iOS не потрібно. І нехай буде всім щастя.

COM_SPPAGEBUILDER_NO_ITEMS_FOUND