【发布时间】:2017-05-04 01:22:08
【问题描述】:
我做了一个ibeacon项目,现在发现两个问题: 首先,当手机锁屏时,我会扫描蓝牙设备(我确定在信标区域),有时扫描失败并返回空数组 第二,当我锁屏时,didEnterRegion 和didExitRegion 有时会停止,当我是屏幕的光时,它们又会亮起
现在每次锁屏都想扫描设备,怎么办?
MonitoringForRegions 代码:
let region = BRTBeaconRegion.init(proximityUUID: proxiID, identifier: proxiID.UUIDString)
region.notifyOnEntry = true
region.notifyOnExit = true
region.notifyEntryStateOnDisplay = true
BRTBeaconSDK.startMonitoringForRegions(region)
Appdelegate 委托代码:
func beaconManager(manager:BRTBeaconManager,didEnterRegion region:BRTBeaconRegion){
if region.notifyOnEntry {
//PublicMethod().sendLocalNotification(BEACON_TIP_IN)
print("\(NSDate())-------enter--------")
}
}
func beaconManager(manager:BRTBeaconManager,didExitRegion region:BRTBeaconRegion){
if region.notifyOnExit {
//PublicMethod().sendLocalNotification(BEACON_TIP_OUT)
print("\(NSDate())-------exit--------")
}
}
func beaconManager(manager:BRTBeaconManager,didDetermineState state:CLRegionState,forRegion region:BRTBeaconRegion){
print("didDetermineState")
}
扫码:
BRTBeaconSDK .startRangingBeaconsInRegions(regionArray) { (beacons, region, error ) in
for beacon in beacons as! [BRTBeacon]{
print("beacons count:\(beacons.count) name :\(beacon.name) macaddress:\(beacon.macAddress) major:\(beacon.major) minor:\(beacon.minor) ")
}
}
更新于 14:25 我发现第一个问题描述的比较准确,锁屏时,设备靠近手机,可以扫描,但不远(这个距离前台可以扫描)
所以我猜是不是锁屏时扫描距离不准确?
【问题讨论】:
-
我建议您发布到目前为止的代码,以便人们可以更好地帮助您
标签: ios swift bluetooth ibeacon