首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安卓LocationManger睡着了吗?

安卓LocationManger睡着了吗?
EN

Stack Overflow用户
提问于 2011-08-19 18:14:38
回答 1查看 837关注 0票数 1

我正在开发一个位置记录应用程序,它每秒保存一个电话位置。

我实现了一个订阅LocationManager更新的服务:

代码语言:javascript
复制
HandlerThread thread = new HandlerThread("LocationServiceHandler");
locationManager.requestLocationUpdates(GPS_PROVIDER, 
    1000 /* milliseconds*/, 0 /* meters */, listener, thread.getLooper());

通过绑定到应用程序上下文启动的服务。

应用程序通常在后台运行,不需要任何用户交互。

一般来说,当我在我的大楼里走来走去时,它工作得很好--该服务每秒获得一个新的location+timestamp,并将其存储到位于外部存储的一个文件中。

但当我到达远离城市的空地时,我发现日志文件中的记录之间有4-5分钟的间隔。我可以肯定地说,当时手机并没有在使用中,而且它是在开放的天空下,没有任何可见的东西阻挡着卫星。它不规律地发生,每小时发生一次,我不能在我的办公室重现这种行为。

有什么想法,什么可能会导致这种情况?怎样才能避免呢?

手机为Nexus S,Android 2.3.4

EN

回答 1

Stack Overflow用户

发布于 2011-08-19 19:27:39

你在用尾锁吗?电话可能会进入睡眠状态,因此您会错过位置。否则,可能是locationmanager不给你位置,因为1000ms是最好的情况。请参阅Update GPS Listener every 5 seconds answers。

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

https://stackoverflow.com/questions/7120103

复制
相关文章

相似问题

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