我希望我的应用程序能够获取当前位置的更新,并对其采取行动。我正计划创建一个服务,它将托管 Google API 客户端代码和位置更新代码。
这个名字虽然让我很反感:谷歌位置服务是一项会在后台自动运行的服务,就像我要创建的服务一样?或者它只是一个名字,我应该继续我的计划?
我希望我的应用程序能够获取当前位置的更新,并对其采取行动。我正计划创建一个服务,它将托管 Google API 客户端代码和位置更新代码。
这个名字虽然让我很反感:谷歌位置服务是一项会在后台自动运行的服务,就像我要创建的服务一样?或者它只是一个名字,我应该继续我的计划?
您没有正确考虑这一点 - Google 如何实施它并不重要。为了直接回答你的问题,我几乎可以肯定地说它不称为“服务”,因为它是Service
- 两者彼此无关。Google 可能会使用一系列的Service
',但您不必关心这些。
您只需要知道它是否有效 - 只要您请求更新,显然频率和准确性将取决于您请求的过滤器/提供者,您将继续获得更新。您无需Service
在后台维护即可继续接收更新。Service
如果您需要在应用程序处于后台时接收并持续对这些更新执行某些操作,您只需要维护 a 。
我还要说这可能是一个缺点。如果您请求位置更新并且从不调用 api 来停止接收更新,您将导致您的应用程序在系统上保持部分唤醒锁,并且您将耗尽用户的电池。获得所需的位置信息后,请拨打适当的电话以停止接收更新。
考虑一下您需要定位的目的、需要它的频率等,并知道只要它没有被垃圾收集,Google 定位服务就会继续调用您的回调对象。