我正在使用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。 我不明白错误在哪里。任何的想法 ? 提前谢谢。
答案 0 :(得分: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