0

我正在使用 Google Play 服务获取当前位置。当我使用requestLocationUpdates方法时,它会给出红线说; 不兼容的类型。必需:android.location.Location。找到:com.google.android.gms.common.api.PendingResult

mLastLocation = LocationServices.FusedLocationApi.requestLocationUpdates(mGoogleApiClient, mLocationRequest, this);

this指的是LocationListener。我已经实现了com.google.android.gms.location.LocationListener和覆盖onLocationChanged方法,但仍然存在红线。为了能够确定我也尝试过这个版本;

mLastLocation = LocationServices.FusedLocationApi.requestLocationUpdates(mGoogleApiClient, mLocationRequest, new LocationListener() {
                @Override
                public void onLocationChanged(Location location) {

                }
            });

这也给出了同样的错误。方法参数有GoogleApiClient、LocationRequest、LocationListener。我不明白错误在哪里。任何想法 ?提前致谢。

4

1 回答 1

1

您不需要分配 mLastLocation。 LocationServices.FusedLocationApi.requestLocationUpdates(mGoogleApiClient, mLocationRequest, this); 由于您的课程实现了 LocationListener,因此您应该在onLocationChanged(Location location). 你看到正式的样本和解释了吗?如果没有,这将很有用:http: //developer.android.com/intl/pt-br/training/location/receive-location-updates.html

阅读更多: http: //developer.android.com/intl/pt-br/reference/android/location/LocationListener.html#onLocationChanged(android.location.Location)

于 2016-04-06T08:56:07.553 回答