2012-04-18 17 views
27

Staram się zaprojektować stronę internetową specjalnie dla android użytkowników, więc zastanawiałem się, czy nie jest hiper Format link, który może otworzyć google maps podobnie jak np wywołania funkcjiOtwórz Mapy Google z hiperłącze

<a href="tel:0766551121"> Call me now </a> 

Odpowiedz

40

Jeśli przez „otworzyć mapy Google” masz na myśli natywną aplikację Android mapy Google zamiast otwierania linku w przeglądarce Android następnie według Geo Intents można wykorzystać następne ing Geo URI formatów, które powodują zamiary że będzie otworzyć aplikację Mapy Google na urządzeniu z danej lokalizacji lub zapytanie:

  • geo: szerokość, długość
  • geo: szerokość, długość z = zoom
  • geo :? q = 0,0 + ulica + mój adres
  • geo: 0,0 q = + biznes + pobliżu miasta

Dla Google street View można użyć:

  • google.streetview: cbll = łac LNG & CBP = 1, zboczenia ,, Boisko, zoom & mz = mapZoom

Szczegółowe informacje na temat dostępnych opcji zobaczyć the official Google Maps Intents documentation

+0

Wysłałem wiadomość e-mail z pierwszym formatem, ale nie działa. Próbuje otworzyć go za pomocą przeglądarek. –

+0

Zdecydowanie najlepszy komentarz jaki znalazłem w internecie na ten temat, dziękuję, panie! – Basti

+0

można również otwierać mapy jako nawigację w trybie pieszym? więc użytkownik nie musi klikać "pobierz trasę" – miro

9

użytkowania GEO URI otwartej mapy na hiperłącze kliknięcia jak:

<a href="geo:37.786971,-122.399677;u=35">open map</a> 
1

jadę z @Mnemonic Przepływ

  • geo: szerokość, długość
  • geo: szerokość, długość z = zoom
  • geo: 0,0 q = + ulica + mój adres
  • geo: 0,0 q = + biznes + pobliżu miasta

Utwórz Uri

Przykład

Krok 1: Utwórz link jak

Uri uri; 
  • geo: szerokość, długość

    uri = Uri.parse("geo:47.6,-122.3")

  • geo: szerokość, długość z = zoom

    uri = Uri.parse("geo:47.6,-122.3?z=11")

  • geo: 0,0?q = + ulica + mój adres

    uri = Uri.parse("geo:0,0q=The+Eldorado+Park,+Rampar+Mota,+Gujarat,+India")

  • geo: 0,0 q = + biznes + pobliżu miasta

    uri = Uri.parse("geo:0,0q=The+Eldorado+Park,+Rampar+Mota,+Gujarat,+India")

Krok 1 Tworzenie metody jak poniżej

public void showMap(Uri geoLocation) { 
    Intent intent = new Intent(Intent.ACTION_VIEW); 
    intent.setData(geoLocation); 
    if (intent.resolveActivity(getPackageManager()) != null) { 
     startActivity(intent); 
    } 
} 

i zadzwoń jak ten

showMap(uri); 

Krok 2: Dodaj intent-filtr w was manifiest plik

<activity YourActivity> 
    <intent-filter> 
     <action android:name="android.intent.action.VIEW" /> 
     <data android:scheme="geo" /> 
     <category android:name="android.intent.category.DEFAULT" /> 
    </intent-filter> 
</activity> 
0

Look here

Jeśli chcesz pracować z mapami Google, można użyć API pokazane w linku. Można na przykład otworzyć bezpośrednio mapy google za pomocą nawigatora gotowego do uruchomienia.