如何在Android中找到丢失的GPS信号?

如何在Android中找到丢失的GPS信号?,android,gps,locationmanager,locationlistener,Android,Gps,Locationmanager,Locationlistener,有没有办法确定GPS信号丢失了?我不是说GPS模块是否启用/禁用。假设GPS模块已启用;但修复丢失了吗 这个链接没有用;由于您无法在用户静止一段时间的情况下使用该解决方案(“LocationListener”停止侦听位置更新;在第一次修复时收到两个更新后) 更重要的是,与姜饼不同的是,在我的Nexus4(它有Jelly Bean 4.2.2)上,不再调用“LocationListener”的“onStatusChanged”方法!我不知道这是否取决于静止不动;但这对我来说再也没有任何意义了 另一

有没有办法确定GPS信号丢失了?我不是说GPS模块是否启用/禁用。假设GPS模块已启用;但修复丢失了吗

这个链接没有用;由于您无法在用户静止一段时间的情况下使用该解决方案(“LocationListener”停止侦听位置更新;在第一次修复时收到两个更新后)

更重要的是,与姜饼不同的是,在我的Nexus4(它有Jelly Bean 4.2.2)上,不再调用“LocationListener”的“onStatusChanged”方法!我不知道这是否取决于静止不动;但这对我来说再也没有任何意义了

另一方面,我的API是通过API 10编译的,但是在该版本中,当时在“LocationManager”类中没有声明称为“GPS\u FIX\u CHANGE”的操作

我应该怎么做才能通知我的应用程序信号丢失和丢失事件


好心的问候

Android和iphone都启用了静止过滤器,正如您所述,这会导致您在静止时无法获得位置更新。
我将忽略这一点,并使用Location.accurity值来表示收到的每个新位置。如果该值超过30m,则为坏GPS

站着的时候,你可以决定什么都不做。
理论上,您的任务有一个解决方案,但有缺点:

当您在一段时间内没有获得新位置时,您可以每5秒禁用并重新启用位置服务。如果GPS信号良好,你会得到一个新的坐标,如果没有可用的GPS信号,你会得到一个新的坐标。

我遇到了同样的问题,并得出了这样的结论:当GPS信号丢失时,监听器会返回最后一个值或0.0(在某些情况下)。如果最后2个值等于最后5位小数,则信号丢失。实际上,GPS永远不会给你两个连续的坐标值相同。这几乎是不可能的,所以只要考虑这个例子(LaSTY-COORDS=NeXYCORDS)-GPS信号丢失。起初,我想这一切都是关于电池的。好的,谢谢朋友的回复。提到的30米部分@iliTheFallen不太准确。它可能会丢失GPS卫星,精度可能会下降,但这并不意味着它丢失了信号。准确度取决于设备的屏蔽程度。