我有成功从多个提供商获取位置更新的代码,并对它们进行过滤以提供当前最佳估计。GPS位置总是返回零速度
我添加了代码来检查返回的Location.hasSpeed()和.hasBearing()值,以便在用户实际移动时进行与轴承相关的计算。
这一切工作正常运行2.3.3华为音速,但在谷歌Nexus S运行4.0.4的GPS提供的位置总是返回false为.hasSpeed()和0 .getSpeed()。
当我注册我的位置监听器时,GPS提供商对.supportsSpeed()返回true,但即使精度下降到30米,它也不会返回位置的速度,并且它正在物理移动(在汽车中,在最大接收的仪表板,屏幕)。
从2.3.x到ICS 4.x有一些不同吗? 即使提供商报告支持,我是否还必须执行自己的速度计算?
我在运行Android 4.1.1的Nexus S上接收当前位置时遇到问题 运行Android 4.0.4的三星Galaxy Nexus和运行Android 4.0.4的三星Galaxy S3上的相同代码工作正常 似乎存在一些Nexus S设备上的GPS问题。 – Klaasvaak 2012-07-31 13:19:38