在我的应用程序中,我需要在进入另一个城市时获得用户位置的更新。
例如:
我发现Google Play服务只提供以下功能:
public abstract Location getLastLocation (GoogleApiClient client)
public abstract PendingResult<Status> requestLocationUpdates (GoogleApiClient client, LocationRequest request, LocationListener listener)
问题是:
我需要持续跟踪用户的城市位置变化,而不仅仅是在用户使用该应用时。
如果不过快地耗尽电池,我怎么能这样做?
答案 0 :(得分:0)
您可以使用广播接收器。 https://developer.android.com/reference/android/content/BroadcastReceiver.html上有一份文档。
private static final LocationRequest REQUEST = LocationRequest.create()
.setFastestInterval(60000) // in milliseconds
.setInterval(180000) // in milliseconds
.setPriority(LocationRequest.PRIORITY_LOW_POWER);
'@Override
public void onConnected(Bundle bundle) {
LocationServices.FusedLocationApi.requestLocationUpdates(
mGoogleApiClient,
REQUEST,
this); // LocationListener
}`
使用FusedLocationApi,你会很高兴。