2016-07-20 4 views
0

Google 지역 정보 ID에서 주소로의 이전과 관련된 게시물을 보았습니다. 그러나 나는 그 반대에 관심이있다.Google GMS 주소에서 Google 지역 정보 ID를 가져 오는 방법

원하는 위치의 GMS 주소가 있지만 사용자에게 더 자세한 정보를 제공하기 위해 Google 지역 정보 ID를 취득하고 싶습니다. Google의 iOS API 웹 사이트에서 본 내용을 보면 자동 완성 기능 (사용자 검색 용), 선택한 위치 기능 또는 현재 위치 기능에서 Google 지역 정보 ID를 얻을 수 있습니다.

내 응용 프로그램에는 이미 주소가있는 여러 위치가 표시됩니다. 사용자는 도착시 세부 정보를받을 수있을뿐만 아니라 자세한 정보를 얻기 위해 개별 위치를 선택할 수 있습니다. 따라서 위에 나열된 기능은 이상적이지 않습니다.

"텍스트 검색 요청"& "Nearby Search Requests"와 같은 기능으로 Google의 웹 API를 사용해 보았지만 "제로 결과"를 받았습니다.

생각해 보지 못한 다른 방법이 있습니까?

답변

0

Google Maps JavaScript API에서 Place ID finder은 어떻습니까?

place ID은 장소를 고유하게 식별하는 텍스트 식별자입니다. 또한 기업, 명소, 공원 및 교차로를 포함한 대부분의 위치에서 사용할 수 있습니다. 이 ID는 안정적이므로 장소의 장소 ID를 확인한 후에 그 장소를 다음에 찾을 때 해당 값을 재사용 할 수 있습니다.

Google 지역 정보 API 및 여러 Google지도 API에서 동일한 장소 ID를 사용할 수 있습니다. 예를 들어, 장소 API에있는 장소의 Google지도 자바 스크립트 APIGoogle지도 지오 코딩 APIGoogle지도 삽입 API를Google지도 도로를 참조하기 위해 같은 장소 ID를 사용할 수 있습니다 API.

다음은 이에 대한 샘플 코드입니다.

function initMap() { 
     var map = new google.maps.Map(document.getElementById('map'), { 
      center: {lat: -33.8688, lng: 151.2195}, 
      zoom: 13 
     }); 

     var input = document.getElementById('pac-input'); 

     var autocomplete = new google.maps.places.Autocomplete(input); 
     autocomplete.bindTo('bounds', map); 

     map.controls[google.maps.ControlPosition.TOP_LEFT].push(input); 

     var infowindow = new google.maps.InfoWindow(); 
     var marker = new google.maps.Marker({ 
      map: map 
     }); 
     marker.addListener('click', function() { 
      infowindow.open(map, marker); 
     }); 

     autocomplete.addListener('place_changed', function() { 
      infowindow.close(); 
      var place = autocomplete.getPlace(); 
      if (!place.geometry) { 
      return; 
      } 

      if (place.geometry.viewport) { 
      map.fitBounds(place.geometry.viewport); 
      } else { 
      map.setCenter(place.geometry.location); 
      map.setZoom(17); 
      } 

      // Set the position of the marker using the place ID and location. 
      marker.setPlace({ 
      placeId: place.place_id, 
      location: place.geometry.location 
      }); 
      marker.setVisible(true); 

      infowindow.setContent('<div><strong>' + place.name + '</strong><br>' + 
       'Place ID: ' + place.place_id + '<br>' + 
       place.formatted_address); 
      infowindow.open(map, marker); 
     }); 
     } 

그냥이 예는 환경 라이브러리가 필요 있다는 사실을. API를 처음로드 할 때 libraries = places 매개 변수를 포함 시키십시오.

script src="https://maps.googleapis.com/maps/api/jskey=YOUR_API_KEY&libraries=places"

: 예를 들어
관련 문제