android – 查找另一部智能手机的笛卡尔坐标?
作者:互联网
考虑到我有两部智能手机,A和B.如果我拿着智能手机A,有没有办法确定B相对于我自己的位置?
所以,如果我们有这种形象的情况:
:
它会告诉我B在位置(2,1).
像使用wifi信号的强度来获得位置的创造性方法更受欢迎.我还可以确定两部手机之间是否有隔墙?
解决方法:
据我所知,蓝牙和Wi-Fi信号都在径向波向各个方向移动 – 所以当你可以测量两个终端之间的距离时,我怀疑这会给你一个正确的读数,因为它可以要么位于圆形区域的“侧面”,要么位于与信号源等距的另一侧.
虽然GPS可能是一个明显的解决方案,因为它提供了您正在寻找的东西,但我不确定您是否将此作为选项.获得设备的两个坐标集后,需要计算设备1的偏移量(N / S和E / W).
这让我想到GPS给出的准确性,考虑到你在问题中包含了蓝牙标签,并且因为蓝牙的范围大约为15-30英尺(2-3型),GPS的误差范围为25 -35英尺,这也许不太好.
如果您确实设法在两个设备之间建立连接(蓝牙),那么您已经知道您在该范围内,但不知道在哪个方向.您可以从Android 2.1: How do I poll the RSSI value of an existing Bluetooth connection?获得信号强度测量值,但是我不知道如何检测用户相对于您的方向,以及他在任何方向上的接近程度.地狱的另一个设备可能在你的上方或你的下方,你得到的距离与你相同的读数相同.
这都是一种“静态”方法,这意味着两种设备都是固定的.但是,如果您测量该值然后向左移动并重新测量,则可以判断您是否距离源更近或更远,因此只需稍微尝试移动其中一个设备即可确定相对位置,这可能对你没用,因为你需要手动告诉手机你向左移动并重新测量或使用更复杂的东西,如监控手机的加速度计,这可以告诉你的方向是什么手机移动并映射信号的强度.
我失去了理智吗?大概.
就我现在而言,没有答案,只是想法.根据应用程序的用途,可能还有其他可行的方法.这是我的脑力转储答案,所以希望其他人可以阅读它并提出更精细的答案而不是隆隆的想法.
标签:android,iphone,gps,bluetooth,smartphone 来源: https://codeday.me/bug/20190630/1333689.html