Nav*_*r M 2 android google-api-client google-places-api google-play-services
在 'com.google.android.gms:play-services-location:9.4.0'
无法导入导入
com.google.android.gms.location.places.Places
由于此无法构建GoogleApiClient且无法使用Places.GeoDataApi.getPlaceById.
但是'com.google.android.gms:play-services-location:8.4.0'我们可以正确使用它.
mGoogleApiClient = new GoogleApiClient
.Builder(this)
.addApi(Places.GEO_DATA_API)
.addApi(Places.PLACE_DETECTION_API)
.enableAutoManage(this, this)
.build();
Places.GeoDataApi.getPlaceById(mGoogleApiClient, placeId).setResultCallback(new ResultCallback<PlaceBuffer>() {
@Override
public void onResult(PlaceBuffer places) {
if (places.getStatus().isSuccess() && places.getCount() > 0) {
final com.google.android.gms.location.places.Place myPlace = places.get(0);
Log.i(TAG, "Place found: " + myPlace.getName());
map.addMarker(new MarkerOptions()
.position(myPlace.getLatLng())
.title(myPlace.getName().toString())
.snippet(myPlace.getAddress().toString()));
map.moveCamera(CameraUpdateFactory.newLatLng(myPlace.getLatLng()));
}
places.release();
}
});
Run Code Online (Sandbox Code Playgroud)
在最新版本的Google Play服务中,他们已经进一步细分了,现在您需要包含这两者location并按places顺序编译问题中的代码:
dependencies {
compile 'com.google.android.gms:play-services-location:9.4.0'
compile 'com.google.android.gms:play-services-places:9.4.0'
//.......
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
812 次 |
| 最近记录: |