我正在寻找一些东西,我需要传递我当前的位置详细信息(纬度和经度)并检索当前位置的类型 .
例如,如果我站在ATM上,如果我通过纬度和经度,谷歌应该返回类似 ATM 的类型 .
为此,我正在使用Google Places API
PendingResult<PlaceLikelihoodBuffer> result = Places.PlaceDetectionApi
.getCurrentPlace(mGoogleApiClient, null);
result.setResultCallback(new ResultCallback<PlaceLikelihoodBuffer>() {
@Override
public void onResult(PlaceLikelihoodBuffer likelyPlaces) {
for (PlaceLikelihood placeLikelihood : likelyPlaces) {
Log.i(TAG, String.format("Place '%s' has likelihood: %g",
placeLikelihood.getPlace().getName(),
placeLikelihood.getLikelihood()));
}
likelyPlaces.release();
}
});
这是代码的主要焦点 .
但在这里它返回的地方列表而不是一个 . 我认为, PlaceDetectionApi 的函数 PlaceDetectionApi 我应该传递半径而不是null . 但我没有得到如何通过它 . 我的GoogleApiClient对象是
mGoogleApiClient = new GoogleApiClient.Builder(this)
.addConnectionCallbacks(this)
.addOnConnectionFailedListener(this)
.addApi(LocationServices.API)
.addApi(Places.GEO_DATA_API)
.addApi(Places.PLACE_DETECTION_API)
.enableAutoManage(this, this)
.build();
提前谢谢你们 .
2 回答
要获得Atm List,这是谷歌官方link获取更近的位置列表
点击地方类型Google会为您提供地点类型的输入参数,您必须从列表中传递以下参数 . 知道参数列表点击这个link
很明显,同一地点也可以与其他地方相关 . 查看@ cricket_007评论 .