我已经使用 ibeacons 设置了一个应用程序,我注意到当我在该区域内打开蓝牙时,didEnterRegion 从未被触发。但是,当我在蓝牙打开的情况下实际进入该区域时,它可以正常工作。
在前台时,我通过在 didStartMonitoringForRegion 中调用 [self.locationManager requestStateForRegion:self.beaconRegion] 来欺骗这种行为,并检查我是否在里面。
但是,我不知道在后台做什么。我知道唯一可以触发的方法是 didEnterRegion ,这意味着我在区域内仅打开蓝牙时无法发送通知。
有人做到了吗?
谢谢
Best Answer-推荐答案 strong>
想到的一个想法:给你的app添加bluetooth-central 后台模式,实现CBCentralManager 和CBCentralManagerDelegate 的centralManagerDidUpdateState .这应该会在启用或禁用蓝牙时唤醒您的应用,您可以利用这段时间来requestStateForRegion 。
关于iOS/信标 - 打开蓝牙时如何触发 didEnterRegion?,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/29278626/
|