首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Android中找到丢失的GPS信号?

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

Stack Overflow用户
提问于 2013-06-09 19:54:49
回答 2查看 3.4K关注 0票数 3

有没有办法发现GPS信号丢失了?我不是在谈论GPS模块是否启用/禁用。假设启用了GPS模块;但是修复丢失了?

这个How can I check the current status of the GPS receiver?链接没有什么用处;因为您不能在用户静止一段时间的情况下使用该解决方案(“LocationListener”停止侦听位置更新;在第一次修复时收到几个更新之后)。

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

另一方面,我的API是通过API10编译的,但是在那个版本中,当时在"LocationManager“类中还没有声明名为"GPS_FIX_CHANGE”的操作。

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

亲切的问候

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-06-09 23:52:55

Android和iphone都启用了stand stand过滤器,正如您所描述的,这会导致您在静止状态下无法获得位置更新。

我会忽略这一点,并对接收到的每个新位置使用Location.accuracy值。如果这个值超过30m,那么它就是坏的GPS。

站着的时候,你可以决定什么都不做。

从理论上讲,你的任务有一个解决方案,但有缺点:

当您在一段时间内没有获得新的位置时,您可以每隔5秒禁用和重新启用位置服务。然后,在GPS良好的情况下,你会得到一个新的坐标,或者如果没有可用的GPS信号,则没有坐标。

票数 1
EN

Stack Overflow用户

发布于 2014-12-18 16:09:55

我也遇到过同样的问题,并得出了这样的结论:当GPS信号丢失时,侦听器将返回最后一个值或0.0 (在某些情况下)。如果最后两个值等于最后第五个十进制数,则信号丢失。在实践中,GPS永远不会给你两个具有相同值的连续坐标。这几乎是不可能的,所以只要考虑一下这种情况,如果(last_coords == new_coords) -> GPS信号丢失。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17009320

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档