android - 查找另一部智能手机的笛卡尔坐标?

标签 android iphone bluetooth gps smartphone

考虑到我有两部智能手机,A 和 B。如果我拿着智能手机 A,有没有办法确定 B 相对于我自己的位置?

所以如果我们有这张图片的情况:

cartesian coordinates :

它会告诉我 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 - 查找另一部智能手机的笛卡尔坐标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10542857/

相关文章:

android - 当应用程序被杀死或销毁时如何启动 Intent 服务?

android - 如何从 sdcard 中选择一个图像文件,然后如何将它发送到服务器?

java - 是否有可能在 Android 蓝牙和笔记本电脑蓝牙设备之间建立不安全的连接?

iOS 图像 Assets 大小。 3x 实际上是 1x 大小的 3 倍吗?是否需要 Retina 4 2x?

ios - 蓝牙iOS配对

ios - 核心蓝牙框架和兼容设备

java - Android 从fragment中获取tabLayout

android - vlc-android-sdk - 无法查看 RTSP 实时视频

iphone - 当 NSAttributedString + NSString 发送到 UIActivityViewController 并选择邮件应用程序时,iOS 7 应用程序崩溃

iphone - 在 Safari 中打开 URL 失败