我有一个后台服务,每12分钟更新一次位置。我们想测试每5-6分钟更新一次位置,但在Android文档中我们发现了这个限制:
“为了减少电量消耗,Android 8.0(API级别26)限制后台应用程序检索用户当前位置的频率。应用程序只能每小时接收几次位置更新。”
“为了减少电量消耗,Android 8.0(API级别26)限制后台应用程序检索用户当前位置的频率。应用程序只能每小时接收几次位置更新。”
https://developer.android.com/about/versions/oreo/background-location-limits.html
服务中接收更新的代码:
mLocationCallback = new LocationCallback() {
@Override
public void onLocationResult(LocationResult locationResult) {
Location location = locationResult.getLastLocation();
//...
}
};
mFusedLocationClient = LocationServices.getFusedLocationProviderClient(this);
mLocationRequest = new LocationRequest();
mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
mLocationRequest.setInterval(TIME_TO_CHECK_LOCATION);
mLocationRequest.setFastestInterval(TIME_TO_CHECK_LOCATION);
mLocationRequest.setMaxWaitTime(TIME_TO_CHECK_LOCATION);
mFusedLocationClient.requestLocationUpdates(mLocationRequest, mLocationCallback, null);
有人测试过在Android 8中使用后台服务进行位置更新的限制吗?
这些限制是每小时固定次数吗?