2016-07-11 4 views
1

Как я могу получить широты & долготы из Google Место API Андроида? Мой код выглядит, как показано ниже ..Google Place API получить широту & долготу места

AutocompleteFilter mAutocompleteFilter = new AutocompleteFilter.Builder().setTypeFilter(AutocompleteFilter.TYPE_FILTER_CITIES).build(); 

PendingResult<AutocompletePredictionBuffer> results = 
        Places.GeoDataApi 
          .getAutocompletePredictions(mGoogleApiClient, constraint.toString(), 
            mBounds, mAutocompleteFilter); 

Я также сталкиваются проблемы с получением результатов более чем 5 результатов. Я использую ссылку this для ссылок. Любая помощь была бы благодарна.

+0

Если вы получаете ошибку OVER-QUERY_LIMIT более 5 результатов, я решил, поставив задержку 0,7 секунд перед каждым апи вызовом Google (в частности, о том, для google geocode api). – Parth

+0

@ Dr..Net: Нет. Моя проблема другая. –

ответ

4

Вы должны сделать что-то вроде этого:

Places.GeoDataApi.getPlaceById(mGoogleApiClient, placeId) 
    .setResultCallback(new ResultCallback<PlaceBuffer>() { 

    @Override 
    public void onResult(PlaceBuffer p) { 
    if (p.getStatus().isSuccess()) { 
     final Place mPlace = p.get(0); 
     LatLng qLoc = mPlace.getLatLng(); 
     //you can use lat with qLoc.latitude; 
     //and long with qLoc.longitude; 
    } 
    p.release(); 
    } 
}); 
+0

Я думаю, что это обойдется мне в 2 запроса для одного поиска местоположения. Это? –

+0

нет, я так не думаю. Я уверен, что это единственный запрос для каждого местоположения. Кстати, вы можете найти дополнительную информацию здесь https://developers.google.com/places/android-api/place-details –

Смежные вопросы