【问题标题】:getSpeed() of Location is not working on WiFi位置的 getSpeed() 在 WiFi 上不起作用
【发布时间】:2014-09-02 01:29:42
【问题描述】:

我想计算用户在 WiFi 上的速度。我正在通过获取位置更新。 onLocationChanged() 但每次 hasSpeed() 返回 false 并且 getSpeed() 返回 0.0。

是否有任何 API 可用于获取 WiFi 速度或我需要手动计算速度?任何帮助或指导将不胜感激。

注意:我可以通过 GPS 获得速度。

【问题讨论】:

  • 兄弟wifi不给你速度...所以每次getSpeed();将返回 0.00 浮点值
  • 嗨,曼,感谢您的快速回复。你的结论是速度计算是由 GPS 发射器/接收器完成的,对吧?
  • 是的,只有 GPS 卫星可以为您提供准确度、高度和速度
  • 谢谢,我知道了。仅供参考,我也可以通过 WiFi 获得准确性。
  • 我相信无论位置信息类型如何,Android 都会报告准确度。当然,在 WiFi 和 GPS 上计算精度是不同的系统,但它仍会对其精度进行猜测。

标签: android android-wifi android-location


【解决方案1】:

当用户仅连接到 WiFi 时,您将无法使用 getSpeed()。 WiFi 定位基于手机看到的已知网络位置。与 GPS 不同,这只会提供粗略的位置,因此无法计算速度。

这样想:如果我从 A 点开始,步行 10 英尺到 B 点,我能看到的 WiFi 网络是否有机会?可能不是。我的 GPS 坐标会发生变化吗?有不错的天空视野,是的。

【讨论】:

  • 您好 Computerish,感谢您的回复。那么在WiFi上,我需要根据位置更新来计算速度,对吧?
  • 您根本无法获得准确的速度读数,除非您的用户以足够快的速度通过大量热点。也许如果用户在附近有很多 WiFi 网络的道路上行驶,您可以根据位置更新获得粗略的平均值。我怀疑在这种情况下,Android 甚至可能会报告 getSpeed() 值,但我不希望它非常准确,而且在大多数情况下,位置根本不会改变。
猜你喜欢
  • 2012-12-01
  • 1970-01-01
  • 2017-12-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多