No se puede detectar Beacon cuando el dispositivo ya está en el range de Beacon y luego activamos Bluetooth y la aplicación se mata

He implementado Beacon con notificación local. Todo funciona bien para el caso cuando el bluetooth está en ON y luego el dispositivo entra en el range de la baliza y la aplicación está en el estado "No se está ejecutando". Pero, cuando el dispositivo ya está en el range de Beacon y luego Bluetooth está encendido, no se llama a ningún delegado. ¿Es una limitación o me estoy perdiendo algo?

Esta es una limitación del marco de location principal.

Cuando una aplicación finaliza el estado "No se está ejecutando", puede volver a iniciarse debido a que la región del gestor de la location hizo los events de región Enter / didExit. Su administrador de location no recibirá events de input / salida de región si activa y desactiva Bluetooth mientras finaliza la aplicación. La única forma en que podrá hacer que los events didEnter / didExit se activen es ingresando o saliendo físicamente de una de sus regiones de baliza al cruzar su umbral de detección.

  • Las aplicaciones terminadas se activarán en los events region didEnter / didExit.

El service de supervisión de la región ofrece events normalmente mientras una aplicación se ejecuta en primer plano o en segundo plano. (Puede usar este service tanto para regiones geográficas como de balizas). Para una aplicación iOS terminada, este service relanza la aplicación para entregar events.

  • Beacon no despertará tu aplicación.

(Si la propiedad notifyEntryStateOnDisplay de la región de la baliza es verdadera, al despertar el dispositivo, la aplicación hará un range de balizas por unos segundos en segundo plano). Este service no reinicia las aplicaciones de iOS que han finalizado; sin embargo, puede relanzarse monitoreando las regiones de baliza usando el service de monitoreo de la región.