iBeacons 在 iOS 中以后台模式扫描?

Posted

技术标签:

【中文标题】iBeacons 在 iOS 中以后台模式扫描?【英文标题】:iBeacons scanning in background mode in iOS? 【发布时间】:2014-08-28 15:09:41 【问题描述】:

请帮帮我!

您能解释一下在将应用模式更改为后台后如何继续扫描 iBeacons 吗? 请写一个示例代码(ios

谢谢)

【问题讨论】:

必须需要 serviceUUID 才能后台扫描 BLE/信标。 【参考方案1】:

您不能在后台运行时无限期地扫描信标。如果您检测到您输入了 CLBeaconRegion,通常可以设置大约 5 秒的范围,并且您可以将位置管理器配置为 notifyEntryStateOnDisplay(默认为 NO),因此当屏幕打开时,例如当用户点击主页按钮时,然后,您将获得大约 5 秒的范围更新。

【讨论】:

【参考方案2】:

无论您是在后台还是前台,监控信标所需的代码都是相同的。你可以这样设置:

 CLBeaconRegion *beaconRegion = [[CLBeaconRegion alloc]
    initWithProximityUUID:proximityUUID
               identifier:identifier];
 [locationManager startMonitoringForRegion:beaconRegion];

然后得到locationManager:didEnterRegion:locationManager:didExitRegion:的回调

您可以在此处阅读更多详细信息:

https://developer.apple.com/library/ios/documentation/userexperience/Conceptual/LocationAwarenessPG/RegionMonitoring/RegionMonitoring.html

【讨论】:

以上是关于iBeacons 在 iOS 中以后台模式扫描?的主要内容,如果未能解决你的问题,请参考以下文章

IOS:手机锁定时iBeacon扫描频率?

在后台使用 iBeacon 或 CoreBluetooth 识别 iOS 设备

后台模式下的 iBeacon 访问

如何在 iOS、Swift 中搜索 iBeacons UUID,并扫描周围的所有 iBeacons

设备重启后的 IOS8 iBeacon 监控

iBeacon 设备扫描和检索次要、主要、uuid 参数