2011-11-15 37 views
1

我是一个完整的Android编程新手。从Android设备获得一致且及时的GPS位置?

我已经完成了一些教程示例,如HelloAndroid和HelloViews/Layouts,但这是关于我的Android编程能力的程度。

我不是这个项目的程序员,我是一个正在开发Android应用程序的测试员(QA),该应用程序会每隔1分钟跟踪公司拥有的设备,并且一旦存储了5次左右就将位置发回(限制移动网络的使用,以节省电池)我的公司购买并支付Android设备,并且员工知道他们正在被追踪,既为了员工的安全目的也为了追究责任。在拨打电话和轻微发送电子邮件后,这是我们设备最重要的功能之一。

我们最大的问题是我们的应用程序可能随时被Android操作系统杀死,出于各种原因(设备资源等)。现在,我们有一个Android服务来检查我们的应用程序是否正在运行如此频繁,如果不是,它会启动备份。一旦我们的应用程序运行后,它可以使用应用程序中的服务在后台和请求位置,然后将它们发送到我们的服务器进行处理和存储。

从我阅读过的关于Android开发实践的所有内容来看,这似乎并不是最适合Android的“适当”方式。从我可以收集到的信息来看,这是相当有限的,我们应该有一个在后台运行的Android服务,然后请求发送位置信息,但即使这样做也可能在不通知操作系统的情况下被终止,对吧?

任何人可以提供的意见或建议会指向正确的方向吗?

回答

0

可能值得一提的是,这将会极大地杀死每个人的电池......但是,你最好的方法就是尽可能地做到这一点。如果操作系统确实在后台杀死了您的应用,您的服务可以重新启动它。

你有什么担心,操作系统会反复杀死它,并且不允许它执行它的工作?

或者GPS位置不准确? Location.getAccuracy()可以帮助你计算出,如果该位置是值得保存

http://developer.android.com/reference/android/location/Location.html

+0

这已经有一段时间,我终于想起我张贴了这个。 我们最担心的事情,以及来自用户的抱怨是,我们的应用程序每次被操作系统杀死时都必须重新启动自己(并且走到前台)。 取决于用户在做什么和他们的设备型号,这可能经常或不经常。 一个常见的情况是打电话。 – StupidGenius