2013-03-26 5 views
0

나는 데이터베이스에 저장된 일부 주소에서 LatLng을 계산하는 서비스를 사용하고 있습니다. 주소가 많을 때 계산 속도가 느려지고 Google지도를 열면 서비스가 백그라운드에서 계산 중이기 때문에 화면에 표시된 모든 마커가 표시되지 않습니다. 지도가 열린 상태에서 마커가 자동으로 표시되는 방법이 있습니까?Google지도 v2에서 즉석 새로 고침을하는 방법

감사합니다.

답변

0

데이터가 표시 될 때가 아닌 데이터베이스에 입력 될 때 데이터를 지오 코딩해야합니다. 보시다시피 지오 코딩이 느리며 지오 코딩 결과를 캐시하는 것이 좋습니다. 또는 처음 주소를 접할 때 지오 코딩 결과를 저장하십시오.

참고 : Google은 지오 코딩 서비스를 사용할 수있는 것에 제한을두고 있습니다. Google의 지오 코딩을 사용했다면 Google지도 API에서만 해당 위도/경도를 사용할 수 있습니다.

무료/오픈 소스 지오 코더가 있습니다. 저의 견해/경험상, Google의 지오 코더는 오픈 소스보다 낫습니다. (그러나 제한이 있습니다.)

+0

그게 정확히 내가 뭘하고 있었는지, 그래서이 계산을 서비스로 바꿨습니다. 이 서비스는 백그라운드에서 실행 중이므로 Google지도를 열 때 모든 위도/경도를 데이터베이스에 요청하지만 서비스가 백그라운드에서 실행되어 일부 위도/경도가 이미 계산되었지만 일부는 그렇지 않은 경우 일부 마커가 이미 배치되었습니다. 백그라운드에서 실행중인 서비스에서 마커가 자동으로 표시되는 방법이 있습니까? – user2213157

+0

그리고 예, Google Maps API v2를 사용하고 있습니다. 도와 주셔서 감사합니다! – user2213157

+0

아, 나는 위도가 예상보다 빠르게 변한다고 추측합니다. Javascript 콜백을 설정할 수 있습니다. 모든 지오 코드에 대한 콜백을 얻는 것이 실용적인 것인지 확실하지 않지만 모든 지오 코드가 완료되면 콜백을 발행 할 수 있어야합니다. http://recurial.com/programming/understanding-callback-functions-in-javascript/ –

관련 문제