FusedLocationProviderClient onLocationResult никогда не вызывается
Я пытаюсь определить местоположение пользователя каждый раз, когда пользователь открывает мое приложение, вот мой код. Я замечаю что onLocationResult
метод никогда не вызывается, и я не могу получить обновление местоположения. Может кто-нибудь помочь мне решить это?
final LocationRequest mLocationRequest = new LocationRequest();
mLocationRequest.setInterval(10000);
mLocationRequest.setFastestInterval(5000);
mLocationRequest.setPriority(LocationRequest.PRIORITY_LOW_POWER);
LocationSettingsRequest.Builder builder = new LocationSettingsRequest.Builder()
.addLocationRequest(mLocationRequest);
SettingsClient client = LocationServices.getSettingsClient(this);
Task<LocationSettingsResponse> task = client.checkLocationSettings(builder.build());
task.addOnSuccessListener(this, new OnSuccessListener<LocationSettingsResponse>() {
@Override
public void onSuccess(LocationSettingsResponse locationSettingsResponse) {
// All location settings are satisfied. The client can initialize
// location requests here.
// ...
LocationCallback mLocationCallback = new LocationCallback() {
@Override
public void onLocationResult(LocationResult locationResult) {
if (locationResult == null) {
return;
}
for (Location location : locationResult.getLocations()) {
Log.d("asdffff",""+ location.getLatitude());
Log.d("asdffff",""+ location.getLongitude());
}
};
};
mFusedLocationProviderClient.requestLocationUpdates(mLocationRequest,
mLocationCallback,
null /* Looper */);
}
});