使用Google Places API检索确切的当前地址

时间:2017-08-06 18:25:22

标签: android location google-places-api

我已经使用了一些黑客来检索我当前的确切地址,但它并不是一个非常强大的解决方案,因为我正在使用Google Places API,我宁愿与之合作放置对象与字符串,我从那里解析地址。

所以我决定尝试通过Places API使用他们网站上提供的算法找到我当前的地址,该算法最有可能发现"放置到用户的当前位置。 (https://developers.google.com/places/android-api/current-place

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();
 }
});

所以我试了一下,输出结果是:

Place 'XXXXXXX' has likelihood: 0.600000
Place 'MyStreetAddress' has likelihood: 0.0500000
Place 'YYYYYYY' has likelihood: 0.00000
Place 'ZZZZZZZ' has likelihood: 0.00000

第一个,&#34;最有可能&#34;建议离我目前的位置约6公里,第二个建议是我的确切街道地址。反正是为了使它更精确或提供某种过滤器,所以它只能推荐某些特定的地址,而不是像#34; Thames River&#34;或&#34; Telus Stadium&#34;?

1 个答案:

答案 0 :(得分:0)

我发现您需要将GPS设置为“高精度”模式。一切都是固定的。