геозона больше не перезапускает приложение из завершенного состояния в ios7?

Я разрабатываю приложение, которое использует ibeacon, чтобы определить, вошел ли пользователь в определенный регион. Теперь я использую платформу CoreLocation для реализации этой функции, основанной на геозонах. Я прочитал документ ниже. https://developer.apple.com/library/mac/documentation/CoreLocation/Reference/CLLocationManager_Class/CLLocationManager/CLLocationManager.html, в котором Apple сообщает, что: «В iOS регионы, которые вы регистрируете в диспетчере местоположений, сохраняются между запусками вашего приложения. Если регион когда ваше приложение для iOS не запущено, система автоматически пробуждает его (или перезапускает) в фоновом режиме, чтобы обработать событие. любые создаваемые вами объекты диспетчера местоположений».

Я обнаружил, что это правда незадолго до iOS 7. Начиная с iOS 7 приложение будет пробуждаться из фона, но на самом деле его больше нельзя будет повторно запустить из завершенного состояния (выдвигается из диспетчера задач, который отображается двойным -нажатие кнопки домой). Если это связано с политикой Apple, почему Apple не обновляет вышеуказанный официальный документ? Поэтому я думаю об ошибке ios7, потому что приложение Reminder (встроенное приложение) также не перезапускается в ios7, хотя оно перезапускается в ios6. Эта проблема связана с политикой Apple? или баги ios7? Мне требуется более 2 дней, чтобы найти решение в Google. Любые идеи по этому вопросу?


person Phan Lac Phuc    schedule 14.01.2014    source источник


Ответы (2)


Документация просто устарела. Это предполагаемое поведение в iOS7. Apple выпустила видео, в котором прямо обсуждается это изменение. Идея состоит в том, что если пользователь явно завершает работу приложения, он не хочет, чтобы оно работало. см. эту тему.

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

person davidgyoung    schedule 14.01.2014
comment
Спасибо за ссылку. Пожалуй, я должен с вами согласиться. - person Phan Lac Phuc; 15.01.2014

iOS 7.1 отменила эту политику. То есть, даже если пользователь убивает ваше приложение, iOS все равно запускает ваше приложение при пересечении региона.

person RawMean    schedule 12.04.2014
comment
Я не вижу этого в iOS 7.1.2 на iPhone 4S — если я закрываю приложение в переключателе задач, приложение не перезапускается, но если ОС убивает приложение из-за нехватки памяти, я вижу перезапуск приложения, когда въезд в регион. - person Greg; 30.12.2014