Мое приложение запускается в фоновом режиме (получение обновлений местоположения), которое мне нужно нажимать на мой сервер каждые 10 секунд.Запуск приложения в фоновом режиме?
Я запланировал таймер, который вызывает функцию, в которой текущие обновления местоположения захватываются и помещаются на сервер. Это работает гладко, если приложение находится на переднем плане. Когда приложение перемещается в фоновый режим, эта функция работает в течение 15 минут, после чего я не вижу метод, который вызывается вообще.
Я знаю, что если приложение будет помещено в фоновое изображение, оно будет приостановлено в любое время. Также, если другое приложение, работающее на переднем плане, требует памяти в то время, iOS может прекратить действие некоторых приложений в фоновом режиме. Но в моем случае приложение не работает на переднем плане, так как я заблокировал свое устройство.
У меня также есть идея о expirationHandler
. Хотелось бы узнать, могу ли я продолжать использовать функцию в фоновом режиме, не подключая мое приложение к приостановленному состоянию, и Apple должна это принять.
Любые предложения приветствуются.
Этот точный вопрос задан много раз. Вы не можете просто произвольно называть свой код каждые X секунд навсегда. Apple не позволяет этого, потому что это пустая трата времени процессора и батареи. Это конец истории. То, что вы * можете * сделать, это зарегистрироваться для значительных обновлений местоположения, и это сообщит вашему приложению, когда пользователь переместится в новую «зону». – borrrden