Kar*_*pal 4 android location android-gps
我正在使用Fused Location Api来获取位置更新.当我将x秒设置为时间间隔时,每隔x秒我就会调用onLocationChanged().当我将10米设置为最小位置时,则在用户从其原始位置移动10米之前不会调用onLocationChanged().
但是当x秒通过或覆盖10米距离时,我需要调用onLocationChanged().
任何想法我怎么能实现这一点.
我的守则
private Location mLastLocation;
public static final int REQUEST_LOCATION = 1006;
LocationRequest mLocationRequest;
private static final long POLLING_FREQ = 1000 * 10;
private static final long FASTEST_UPDATE_FREQ = 1000 * 10;
private static final long SMALLEST_DISPLACEMENT = 10;
mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
mLocationRequest.setInterval(POLLING_FREQ);
mLocationRequest.setFastestInterval(FASTEST_UPDATE_FREQ);
mLocationRequest.setSmallestDisplacement(SMALLEST_DISPLACEMENT);
startLocationUpdates();
Run Code Online (Sandbox Code Playgroud)
仅限于流离失所
mLocationRequest.setInterval(0);
mLocationRequest.setFastestInterval(0);
mLocationRequest.setSmallestDisplacement(SMALLEST_DISPLACEMENT);
Run Code Online (Sandbox Code Playgroud)
仅限间隔
mLocationRequest.setInterval(POLLING_FREQ);
mLocationRequest.setFastestInterval(FASTEST_UPDATE_FREQ);
mLocationRequest.setSmallestDisplacement(0); // Not needed, already default value is 0
Run Code Online (Sandbox Code Playgroud)
通常使用AND计算间隔和距离参数.这意味着当你改变你的位置至少SMALLEST_DISPLACEMENT米并且至少已经过了POLLING_FREQ毫秒时,那么onLocationChanged()将被触发.
| 归档时间: |
|
| 查看次数: |
1402 次 |
| 最近记录: |