首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取GPS坐标后发送消息

获取GPS坐标后发送消息
EN

Stack Overflow用户
提问于 2014-02-21 19:46:40
回答 1查看 409关注 0票数 0

我做了一个应用程序,是通过短信发送GPS坐标。

因此,当你点击按钮,它将尝试更新位置,但由于GPS坐标更新需要10-15秒,它将跳到获取lastknowLocation并发送短信。

-lastKnowLocation已经过时了,或者是0.0,0.0。

如何延迟短信的发送,直到它获得新的GPS和弦?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-21 19:59:59

您可以使用BroadCastReceiver接收新的gps位置:BroadcastReceiver for location。您将使用带有requestLocationUpdates参数的PendingIntent版本,此方法允许接收新的坐标,即使应用程序被杀死,也可以从文档中获得:

该方法适用于后台用例,更具体地用于接收位置更新,即使应用程序已被系统杀死。为了做到这一点,使用PendingIntent作为启动服务。对于前台用例,建议使用该方法的LocationListener版本,请参见requestLocationUpdates(LocationRequest,LocationListener)。

在您的广播onReceive中,我会触发一个使用IntentService的IntentService:https://github.com/commonsguy/cwac-wakeful。这是因为广播接收机的处理应该总是尽可能短,它总是更好地开始一项服务--即。IntentService,为了防止安卓在处理广播后杀死你的应用程序和服务(安卓可以这么做--但大多数情况下,如果你的应用在触发悬念之前就被杀死了),你就可以使用觉醒。在您的IntentService中,您可以安全地发送电子邮件。您可以保存您的应用程序共享首选项内的短信信息。

所有这些复杂是因为用户可以在点击按钮后,按下主页按钮,你的应用程序实际上可能会被杀死。

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

https://stackoverflow.com/questions/21943828

复制
相关文章

相似问题

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