【发布时间】:2017-06-26 11:10:05
【问题描述】:
我对监控模式下的 iBeacons 有疑问。如果设备在信标附近 1-2m 处,我想与发送给用户的通知进行交互。
以前有个函数叫:
var radius: CLLocationDistance { get }
现在已弃用,因此无法设置信标区域的范围。 所以无法配置内部、外部、未知的不同状态。大多数远程信标的区域超过 60m,这使得该区域对于您家中的任何交互都很大。
我要做的就是将我通过 AT 命令使用的 BLE 芯片的功率降低到 -4hz。现在跨度在 3-4m 左右,这更好一点仍然不是我想要的。我试过用锡罐来进一步降低信号,但这并没有太大的区别。甚至是 BLE 芯片周围的锡箔。
有人找到指定 Beacon 区域的方法吗?使用此功能触发内部区域所需的接近度:
func locationManager(_ manager: CLLocationManager, didDetermineState state: CLRegionState, for beaconRegion: CLRegion){}
测距模式似乎不能与监控结合使用,所以我不能使用接近度,否则这将是一个解决方案。
func update(distance: CLProximity) {}
【问题讨论】:
-
"与对区域的一般理解相反,信标区域不由任何地理属性定义,例如 GPS 数据或纬度和经度。相反,它具有与信标相同的三个值:UUID、主要和次要(在此处阅读有关它们的更多信息)。因此,区域的物理表示是该区域中所有信标的范围。 (community.estimote.com/hc/en-us/articles/…)
标签: ios swift3 ibeacon proximity clbeaconregion