2016-08-18 3 views
0

Я пытаюсь использовать FusedLocationApi в моем Android приложение, чтобы получить последнее известное местоположение после этой директивы: https://developer.android.com/training/location/change-location-settings.htmlcom.google.android.gms.common.api.Status .getStatus() не может решить

У меня есть некоторые проблема с результат класс. На мой код:

final PendingResult<LocationSettingsResult> result = LocationServices.SettingsApi.checkLocationSettings(mGoogleApiClient, builder.build()); 

... 
final Status status = result.getStatus(); 

На result.getStatus(); my IDE уведомить меня Не удается решить метод 'GetStatus()'. Я импортирую библиотека com.google.android.gms.common.api.Status.

Где проблема?

ответ

3

Я надеюсь, что вы уже решили эту проблему, но это только для тех, кто может быть обращена та же проблема .....

объект PendingResult «s не один, вы должны использовать для вызова getStatus. Вместо этого вы вызываете метод, используя метод LocationSettingsResult (это класс, который кодирует метод getStatus()), который является аргументом метода onResult.

Это то, что она выглядит, как->

private void getLocationSettings() { 
    LocationSettingsRequest.Builder builder = new LocationSettingsRequest.Builder().addLocationRequest(mLocationRequest); 
    final PendingResult<LocationSettingsResult> result = LocationServices.SettingsApi.checkLocationSettings(mGoogleApiClient, builder.build()); 

    result.setResultCallback(new ResultCallback<LocationSettingsResult>() { 
     @Override 
     public void onResult(@NonNull LocationSettingsResult locationSettingsResult) { 
      final Status status = locationSettingsResult.getStatus(); 
     } 
    }); 
} 
Смежные вопросы