开发一个在后台更新用户位置的android应用程序。现在,谷歌为此提供了两种方式:
通过 getlastlocation() 函数获取用户的最后位置。可以设置警报管理器,并在广播接收器和服务的帮助下,可以连续更新位置。 例如:
除非用户这样做,否则哪种方式是在后台持续获取位置更新而不Android杀死后台服务的最佳方式?
开发一个在后台更新用户位置的android应用程序。现在,谷歌为此提供了两种方式:
通过 getlastlocation() 函数获取用户的最后位置。可以设置警报管理器,并在广播接收器和服务的帮助下,可以连续更新位置。 例如:
除非用户这样做,否则哪种方式是在后台持续获取位置更新而不Android杀死后台服务的最佳方式?
第二种方法“请求定期位置更新”是活动的。它允许您更具体地调整更新频率以及在什么情况下您将获得更新。您是在告诉 Android 您希望经常更新和/或如果用户移动了超过 X 米。
第一种使用方法getLastLocation()
是被动的。这意味着您无法控制更新的频率或质量。您基本上是在搭载其他应用程序的位置更新请求。如果有其他应用程序要求频繁更新,那么调用getLastLocation()
将为您提供相对最近/准确的位置。但是,如果其他应用程序没有请求频繁更新(或者用户可能根本没有运行任何其他应用程序),则调用getLastLocation()
可能会返回非常陈旧(不准确/旧)的数据。