2012-02-13 2 views
6

위도와 경도가 있으며 그 지점에 Google지도를 열려고합니다. 그래서 그것을 위해 다음 코드를 사용합니다 :주어진 위도와 경도로 마커/오버레이 항목으로지도 인 텐트를 시작하는 방법은 무엇입니까?

Intent intent = new Intent(android.content.Intent.ACTION_VIEW, 
    Uri.parse("geo:"+lat +","+lng)); 
startActivity(intent); 

그러나 이것은 중앙에 마커를 배치하지 않습니다. 나는 시작점 (그리고 선택적으로 어떤 종류의 이름)부터 시작해서 어떤 종류의 표식을 넣고 싶다. 이것이 어떻게 달성 될 수 있는지 생각해보십시오.

Intent intent = new Intent(); 
    intent.putExtra("latitude", latitude); 
    intent.putExtra("longitude", longitude); 
    startActivity(intent); 

을 그리고 당신이 시작 한 MapActivity에서 그들을 가져 :

답변

13

,

특정 장소를 표시,

Uri uri = Uri.parse("geo:0,0?q=22.99948365856307,72.60040283203125 
                   (Maninagar)"); 
Intent intent = new Intent(Intent.ACTION_VIEW, uri); 
startActivity(intent); 

,

Intent intent = new Intent(Intent.ACTION_VIEW, 
Uri.parse("http://maps.google.com/maps?saddr="+23.0094408+","+72.5988541+"& 
          daddr="+22.99948365856307+","+72.60040283203125)); 
startActivity(intent); 
+0

감사합니다. 이 URI 프로토콜은 문서화되지 않은 것으로 보입니다. 버전 호환성에 대한 아이디어가 있습니까? – apoorv020

+3

좋은 답변은 1+입니다. – Mihir

+0

위치 이름 (이 예에서는 Maninagar) 주위에 괄호를 추가하는 것을 잊어 버린 경우이 방법은 작동하지 않습니다. – phreakhead

-2

당신은 단순히이 같은 의도에 엑스트라로 위도와 경도를 넣을 수 있습니다

Intent intent = getIntent(); 
    double latitude = intent.getDoubleExtra("latitude", 0.0); 
    double longitude = intent.getDoubleExtra("longitude", 0.0); 

그런 다음 당신이 그를 사용할 수 있습니다 원하는 모든 것에 대한 가치. 희망이 도움이됩니다. 사이 장소에 경로를 표시

당신은 같이 사용할 수 있습니다
관련 문제