使用蓝牙计算两部或多部 iPhone 之间的距离
Posted
技术标签:
【中文标题】使用蓝牙计算两部或多部 iPhone 之间的距离【英文标题】:Calculating the distance between two or more iPhones using Bluetooth 【发布时间】:2014-10-25 09:20:18 【问题描述】:假设我有 2 部或更多部 iPhone,每部都是 4s 或更高版本,并且启用了蓝牙 4.0。
是否有可能将每部手机变成一个 iBeacon,让每部其他手机都可以接收来自该手机的更新,并计算从自己到该手机的距离来传输它的位置。
原因是,我希望能够非常准确地定位,也许在 5m 以内。因此,如果两部(或更多)手机在 GPS 最小精度范围内(约 17m?),它们会切换到 iBeacon 模式。
想法?
【问题讨论】:
【参考方案1】:理论上这是可能的,但存在三个实际挑战:
您必须以某种方式定期唤醒应用程序以检查它是否在其他设备的 GPS 范围内。您可以使用主要位置更改回调,但这通常仅在 2000 米或更多的位置更改时提供。因此,您可能需要完整的位置背景模式才能获得定期更新。除非您正在制作专用的导航应用,否则请求位置后台模式可能会使您更难进入 AppStore。
一旦确定用户处于其他用户所在的粗略位置,就必须让用户将应用程序置于前台。这是因为信标传输只能在前台进行。
由于无线电信号波动和噪声,您必须接受信标测距不是超级准确。在 2 米距离处,您可能会得到 +/- 1 米的估计值。在更远的距离,比如 20 米,方差要高得多,比如 +/- 10 米。
您必须确定您的用例是否可以满足上述限制。
【讨论】:
以上是关于使用蓝牙计算两部或多部 iPhone 之间的距离的主要内容,如果未能解决你的问题,请参考以下文章