Android FusedLocationProvider请求完成后GPS未关闭
我的One Plus 3T设备出现问题,导致GPS在正确调用Android FusedLocationProvider请求完成后GPS未关闭,android,fusedlocationproviderapi,Android,Fusedlocationproviderapi,我的One Plus 3T设备出现问题,导致GPS在正确调用RemovelociationUpdate后保持活动状态(等待PendingEvent状态返回成功,然后断开API客户端) 下图显示了GPS在19分钟内保持活动状态,而它本应仅处于活动状态约10秒(当日志显示请求已成功删除时)。我不知道为什么GPS没有关闭,这会导致电池耗电量非常高,从下面可以看到 这是删除位置请求和断开客户端连接的方式: PendingResult<Status> result = LocationSer
RemovelociationUpdate
后保持活动状态(等待PendingEvent状态返回成功,然后断开API客户端)
下图显示了GPS在19分钟内保持活动状态,而它本应仅处于活动状态约10秒(当日志显示请求已成功删除时)。我不知道为什么GPS没有关闭,这会导致电池耗电量非常高,从下面可以看到
这是删除位置请求和断开客户端连接的方式:
PendingResult<Status> result = LocationServices.FusedLocationApi.removeLocationUpdates(mGoogleApiClient, mLocationListener);
result.setResultCallback(new ResultCallback<Status>() {
@Override
public void onResult(@NonNull Status status)
// Something went wrong! Throw RunTimeException on main thread
// this will crash the application
if(!status.isSuccess()){
throw new RuntimeException("Could not remove location updates!");
}else{
Log.i(TAG, "Location request removed successfully");
}
mGoogleApiClient.disconnect();
}
});
但是,对于GPS保持活动且GnssLocationProvider
wakelocks仍处于活动状态的时间,在删除请求后不会输出任何内容
编辑:除上述内容外,输出似乎来自于使用actionLocationManager进行广播时。HIGHPOWER\u REQUEST\u CHANGE\u action
从中指示:
高功率位置请求已启动或停止
活跃
更多信息:
强制停止应用程序或Google Play服务不会清除唤醒锁。似乎只有重新启动设备才能将其删除。请添加code@Shmuel我已经添加了我正在使用的断开连接代码。
05-02 15:52:06.394 21277 21425 I LocationControllerImpl: areActiveHighPowerLocationRequests package:android
05-02 15:52:06.394 21277 21425 I LocationControllerImpl: areActiveHighPowerLocationRequests getOp:42 opEntry:false
05-02 15:52:06.394 21277 21425 I LocationControllerImpl: areActiveHighPowerLocationRequests package:com.google.android.gms
05-02 15:52:06.394 21277 21425 I LocationControllerImpl: areActiveHighPowerLocationRequests getOp:42 opEntry:false
05-02 15:52:06.394 21277 21425 I LocationControllerImpl: areActiveHighPowerLocationRequests package:com.google.android.googlequicksearchbox
05-02 15:52:06.395 21277 21425 I LocationControllerImpl: areActiveHighPowerLocationRequests getOp:42 opEntry:false
05-02 15:52:06.395 21277 21425 I LocationControllerImpl: areActiveHighPowerLocationRequests package:me.twrp.twrpapp
05-02 15:52:06.395 21277 21425 I LocationControllerImpl: areActiveHighPowerLocationRequests getOp:42 opEntry:false
05-02 15:52:06.395 21277 21425 I LocationControllerImpl: areActiveHighPowerLocationRequests package:com.myapp.xxx
05-02 15:52:06.395 21277 21425 I LocationControllerImpl: areActiveHighPowerLocationRequests getOp:42 opEntry:false