Google位置服务是否为服务 - 在后台运行

时间:2015-05-08 17:36:56

标签: java android android-service android-gps google-location-services

我希望我的应用获取当前位置的更新,并采取相应措施。我计划创建一项服务,该服务将托管Google API客户端代码和位置更新代码。

该名称虽然让我失望:google location SERVICES是否会自动在后台运行,就像我要创建的服务一样?或者它只是一个名字,我应该继续我的计划?

1 个答案:

答案 0 :(得分:1)

您没有正确地考虑这一点 - Google如何实施它并不重要。为了直接回答你的问题,我几乎可以肯定地说,它并没有被称为"服务"因为它是Service - 这两者彼此无关。 Google可能会使用一系列Service,但你不必关心它。

您需要知道的是它的工作原理 - 只要您请求更新,显然频率和准确性将取决于您请求的过滤器/提供商,您将继续获得更新。您无需在后台维护Service即可继续接收更新。只有当您的应用位于后台时,如果您需要接收并不断做某些这些更新,您只需要维持Service

我还要说这可能是一个缺点。如果您请求位置更新并且从不拨打api电话以停止接收更新,您将导致您的应用在系统上保留部分唤醒锁,并且您将杀死您的用户'电池。获得所需的位置信息后,请拨打正确的电话以停止接收更新。

考虑您需要的位置,您需要的频率等等,并且知道Google位置服务将继续调用您的回调对象,只要它没有被垃圾回收。