我有三台Pixel手机,当检查片段中的位置权限时,它们都显示此行为。
当wifi关闭时,来自checkLocationSettings方法的result.isSuccessful()始终返回false。我真的不明白,好像Pixel不知道如何在没有wifi的情况下处理位置请求。
请注意,如果您打开扫描wifi网络,它将重新开始正常工作。
这是我的应用程序执行的过程:
1)活动请求位置权限并被授予。 (一切正常)。
2)稍后运行的Fragment检查授予的位置权限,并请求位置更新。
片段代码:
locationRequest = LocationRequest.create();
locationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
locationRequest.setInterval(UPDATE_INTERVAL);
locationRequest.setFastestInterval(FASTEST_INTERVAL);
LocationSettingsRequest.Builder builder = new
LocationSettingsRequest.Builder().addLocationRequest(locationRequest);
SettingsClient client = LocationServices.getSettingsClient(activity);
Task<LocationSettingsResponse> task = client.checkLocationSettings(builder.build());
task.addOnCompleteListener(result -> {
if (result.isSuccessful()) {
fusedLocationClient.requestLocationUpdates(
...
}else{
//Always end up here
//com.google.android.gms.common.api.ResolvableApiException: 6: RESOLUTION_REQUIRED
Exception locExcep = result.getException();
Log.e(TAG, "startLocationUpdates failed: ", locExcep);
}
我可以动手使用的其他所有电话。所有代码几乎都与以下代码相同:
https://developer.android.com/training/location/change-location-settings.html
https://developer.android.com/training/location/receive-location-updates
错误是:
com.google.android.gms.common.api.ResolvableApiException: 6: RESOLUTION_REQUIRED
at com.google.android.gms.common.internal.ApiExceptionUtil.fromStatus(Unknown Source:3)
at com.google.android.gms.common.internal.zai.zaf(Unknown Source:2)
at com.google.android.gms.common.internal.zaj.onComplete(Unknown Source:6)
at com.google.android.gms.common.api.internal.BasePendingResult.zaa(Unknown Source:172)
at com.google.android.gms.common.api.internal.BasePendingResult.setResult(Unknown Source:131)
at com.google.android.gms.common.api.internal.BaseImplementation$ApiMethodImpl.setResult(Unknown Source:36)
at com.google.android.gms.internal.location.zzbc.zza(Unknown Source:2)
at com.google.android.gms.internal.location.zzar.dispatchTransaction(Unknown Source:11)
at com.google.android.gms.internal.location.zzb.onTransact(Unknown Source:22)
at android.os.Binder.execTransact(Binder.java:731)
答案 0 :(得分:0)
您使用的是哪个版本的Android Gradle插件?尝试使用com.android.tools.build:gradle:3.3.0-alpha11。
如果这不能解决您的问题,请提供以下详细信息: