Приложение iOS с iBeacon должно перезагрузить устройство

Я создал простое приложение IOS с IBeacon . Я запустил это приложение на iPhone 4s с ios7.1 во время работы базовой станции IBeacon . Все работает в фоновом режиме или на переднем плане (область выхода имеет 30-секундную задержку в фоновом режиме). Но в течение некоторого периода времени, около 3 часов, это Приложение не может отслеживать какие-либо события, хотя настройки устройства не изменились (blueTooth и locate - это нормально). В этой ситуации необходимо перезагрузить устройство.

Пожалуйста, скажите мне, что я должен сделать в этой ситуации? Спасибо!

1 ответ

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

Один из способов заставить цикл сканирования Bluetooth LE искать iBeacons - это запустить на переднем плане другое приложение, которое использует API-интерфейсы ранжирования CoreLocation iBeacon.

Попробуйте установить Locate для iBeacon, затем, как только ваше приложение не получит уведомлений в basckground, запустите Locate для iBeacon и коснитесь Locate iBeacons. Вы видите iBeacons? Ваше фоновое приложение получает уведомление?

Если это работает, то повторите тест и вместо использования приложения Locate для принудительного сканирования, просто подождите (час, если необходимо). Посмотрите, получите ли вы в конечном итоге уведомление, и отметьте, сколько времени это заняло.

Редактировать: похоже, что это тот случай, когда iOS перестает искать iBeacons, полностью нуждающиеся в перезагрузке. Смотрите связанный вопрос ниже.

iBeacon: didRangeBeacons перестает вызываться, необходимо перезагрузить устройство, чтобы оно снова заработало

Другие вопросы по тегам