我想创建将在购物中心导航用户的应用程序。所以,我会创建一个商城的地图,我需要以某种方式跟踪用户位置的变化。由于建筑物中的导航,GPS不是解决方案(低信号)。所以,我假设有一种方法可以跟踪另一个模块(可能是加速度计?)的位置变化(1-2米)。有任何想法吗? 感谢
更新:我无法使用任何其他设备,例如iBeacons等。我只能使用运行应用程序的设备。无法访问wi-fi路由器等。
示例:我站在Apple商店附近(A点),现在我要去三星商店(B点)。应用程序应该反应我开始从A点移动,并知道多少米(准确度可能不理想)我从A点走,在我走的哪一边(东,西,南,北)。
答案 0 :(得分:1)
iBeacons为您的任务发明了豆子,它们是低能量的蓝牙设备,它们发出一个唯一的ID,如果我记得正确,那也是到那个灯塔的距离。 iBeacons是由Apple发明或为Apple发明的。因此,您必须搜索适用于Android的替代方案。 ibeacons安装在商店的墙壁上。
<强>更新强>
你可以做的事情:
- 使用accelrometer计算步数,就像API中的苹果一样
- 从理论上讲,你可以使用内置的指南针,但实际上它必须在每次使用时进行校准(这很烦人,并且用户不会这样做)。
- 您可以使用车间的磁场分析和智能手机的3-d磁传感器来获得分米精度。这适用于研究(indoor navigation using magnetic fields)但是你必须创建每个商店的磁图以使其有效。
用于WLAN:
商店里至少需要3个不同的wlan路由器。通常他们只有一个。
你不会得到1-2米的精确度。
(在ios上无法读取附近的wlan设备ID,希望你能在android中做到这一点)
iBeacons或类似设备安装在战略位置的商店, 是你唯一可行的技术。
答案 1 :(得分:0)
有一个开源Android应用程序,用于跟踪没有GPS的位置。它使用API级别19提供的TYPE_STEP_DETECTOR
传感器。
您可download it from Google Play,源代码为available on GitHub。
该应用不是很准确,因为它使用平均步长。如果我们允许用户自动指定或计算他的个人步长,则可以进行改进。