Яка різниця між фоновим оновленням програми в iOS 7 і багатозадачністю в iOS 6?


10

Хіба iOS 6 не підтримував багатозадачність та дозволяв фоновим програмам оновити вміст? Отже, що нового в iOS 7? Тільки що ми можемо ввімкнути / вимкнути конкретні програми з доступу до мережі під час роботи у фоновому режимі?

Також я бачу, що додаток Pandora відсутній у цьому списку (Налаштування → Загальне → Оновлення фонового додатка), але він працює чудово, коли у фоновому режимі і отримує дані, коли на 3G. Як це працює?

Відповіді:


13

iOS 4 та новіші підтримувані багатозадачності для деяких конкретних випадків використання:

  • Програма, яка потребує обмеженого часу, щоб виконати завдання (наприклад, завантаження файлу) і може бути призупинена після цього. Його не прокинуть, поки користувач не повернеться до програми.

  • Відтворення звукового вмісту для користувача, перебуваючи у фоновому режимі, наприклад Pandora.

  • Запис аудіо у фоновому режимі

  • Повідомлення користувача про його місцезнаходження, наприклад, навігаційну програму

  • Програми VoIP, такі як Skype

  • Нові програми, які періодично оновлюють вміст

  • Спілкування з підключеними аксесуарами (додано в iOS 5)

  • Додатки, які спілкуються з пристроями Bluetooth (додано в iOS 6)

iOS 7 додає два додаткові випадки використання для багатозадачності.

  • Програма може зареєструвати, що хоче регулярно завантажувати невеликі набори інформації. Наприклад, вона може регулярно завантажувати оновлення Twitter. Цей новий API дозволяє вам вказати, що ви хочете прокидатися, щоб завантажувати інформацію так часто. Наприклад, програма могла сказати, що хоче завантажити інформацію після того, як вона спить щонайменше п'ятнадцять хвилин. Потім система спробує знайти час, коли вона може пробудити відразу багато додатків, щоб зробити свою роботу. Мінімізація кількості пробуджень пристрою допоможе заощадити акумулятор.

  • Програма може зареєструватися, щоб пробудити для завантаження вмісту, якщо вона отримує віддалене повідомлення. Ідея полягає в тому, що він може завантажити вміст і бути готовим до його відображення, якщо зайти в додаток.


Нічого собі, я думав, що я знаю, що це означає. Виявилося, що у мене немає поняття. Добре написано.
Мельван

Це може заслужити власне питання, але чи відключення "оновлення фонової програми" обмежить будь-який із випадків використання до iOS 7? Я думаю, що ні, оскільки я не бачив Apple Maps серед варіантів включення / відключення.
Шанс

7

Я фактично пішов на сесію WWDC з цього приводу, тому я трохи розбираюся в цьому питанні. Наскільки я розумію, в iOS 7:

  • Додаток повідомляє системі, чи хоче вона використовувати фонове оновлення програми.
  • Якщо додаток хоче скористатися цією функцією, система аналізує схеми використання цього додатка (ви відкриваєте його щоранку близько 7, раз на годину, у третій вівторок тощо),
  • Після того, як система подумає, що вона визначила ваш шаблон для додатка, вона приділяє програмі кількість часу, перш ніж вона подумає, що ви збираєтесь відкрити додаток.

Коли це було б корисно? Для додатків з динамічним, оновленим вмістом. Наприклад:

  • Twitter
  • Facebook
  • Додаток Stack Exchange
  • Додаток для новин
  • RSS-зчитувач
  • тощо.

Базово, що будь-яка програма із вмістом, який часто оновлюється , виграла б від цієї функції.

Як користувач, це означає, що коли ви відкриваєте додаток після того, як система з'ясує ваші шаблони використання, ви побачите зовсім недавній вміст - замість вмісту, який зберігається в кешованому режимі від останнього відкриття програми.

Також розробники люблять цю функцію - в один момент навколо Тіма Кука було декілька розробників, які дякували йому за таку особливість і намагалися переконатися, що це не піде.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.