Google Maps Intents für Android

Die Google Maps App für Android bietet verschiedene Intents, mit denen Sie Google Maps im Anzeige-, Such-, Navigations- oder Street View-Modus aufrufen können. Informationen zum Einbetten einer Karte in Ihre App finden Sie in der Kurzanleitung zum Maps SDK for Android.

Für Android Automotive OS-Plattformen (AAOS) gelten bestimmte Überlegungen und es sind zusätzliche Intents verfügbar. Weitere Informationen finden Sie in der Dokumentation zu Google Maps für Android Automotive-Intents.

Übersicht

Mit Intents können Sie eine Aktivität in einer anderen App starten, indem Sie in einem Intent-Objekt eine Aktion beschreiben, die ausgeführt werden soll, z. B. „Karte einblenden“ oder „Wegbeschreibung zum Flughafen anzeigen“. Die Google Maps App für Android unterstützt verschiedene Intents. So können Sie die Google Maps App aufrufen und eine von vier Aktionen ausführen:

  1. Eine Karte an einem bestimmten Ort und mit einem bestimmten Zoomfaktor anzeigen
  2. Nach Orten suchen und sie auf einer Karte anzeigen lassen
  3. Wegbeschreibung von einem Ort zu einem anderen anfordern Routen können für drei Verkehrsmittel zurückgegeben werden: Auto, Fußweg und Fahrrad.
  4. Panoramabilder in Google Street View anzeigen

Auf dieser Seite werden die Intents beschrieben, die Sie mit der Google Maps App für Android verwenden können. Weitere Informationen zu Intents finden Sie unter Intents und Intent-Filter und Häufige Intents.

Intent-Anfragen

Wenn Sie Google Maps mit einem Intent starten möchten, müssen Sie zuerst ein Intent-Objekt erstellen und dessen Aktion, URI und Paket angeben.

  • Aktion: Alle Google Maps-Intents werden als View-Aktion aufgerufen – ACTION_VIEW.
  • URI: Google Maps-Intents verwenden URL-codierte URIs, die eine ausgewählte Aktion sowie einige Daten zum Ausführen der Aktion angeben.
  • Paket: Durch den Aufruf von setPackage("com.google.android.apps.maps") wird sichergestellt, dass die Google Maps App für Android den Intent verarbeitet. Wenn das Paket nicht festgelegt ist, bestimmt das System, welche Apps die Intent verarbeiten können. Wenn mehrere Apps verfügbar sind, wird der Nutzer möglicherweise gefragt, welche App er verwenden möchte.

Nachdem Sie die Intent erstellt haben, können Sie auf verschiedene Arten anfordern, dass das System die zugehörige App startet. Eine gängige Methode ist, die Intent an die Methode startActivity() zu übergeben. Das System startet die erforderliche App – in diesem Fall Google Maps – und beginnt mit dem entsprechenden Activity.

Java

// Create a Uri from an intent string. Use the result to create an Intent.
Uri gmmIntentUri = Uri.parse("google.streetview:cbll=46.414382,10.013988");
// Create an Intent from gmmIntentUri. Set the action to ACTION_VIEW
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
// Make the Intent explicit by setting the Google Maps package
mapIntent.setPackage("com.google.android.apps.maps");
// Attempt to start an activity that can handle the Intent
startActivity(mapIntent);

Kotlin

// Create a Uri from an intent string. Use the result to create an Intent.
val gmmIntentUri = Uri.parse("google.streetview:cbll=46.414382,10.013988")
// Create an Intent from gmmIntentUri. Set the action to ACTION_VIEW
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
// Make the Intent explicit by setting the Google Maps package
mapIntent.setPackage("com.google.android.apps.maps")
// Attempt to start an activity that can handle the Intent
startActivity(mapIntent)

Wenn das System keine App identifizieren kann, die auf den Intent reagieren kann, stürzt Ihre App möglicherweise ab. Prüfen Sie daher zuerst, ob eine Empfangsanwendung installiert ist, bevor Sie einem Nutzer einen dieser Intents präsentieren.

Um zu prüfen, ob eine App den Intent empfangen kann, rufen Sie resolveActivity() für Ihr Intent-Objekt auf. Wenn das Ergebnis nicht null ist, gibt es mindestens eine App, die den Intent verarbeiten kann, und es ist sicher, startActivity() aufzurufen. Wenn das Ergebnis null ist, verwenden Sie den Intent nicht und deaktivieren Sie nach Möglichkeit die Funktion, die den Intent aufruft.

Java

if (mapIntent.resolveActivity(getPackageManager()) != null) {
    ...
}

Kotlin

mapIntent.resolveActivity(packageManager)?.let {
    ...
}

Wenn Sie beispielsweise eine Karte von San Francisco anzeigen möchten, können Sie den folgenden Code verwenden:

Java

Uri gmmIntentUri = Uri.parse("geo:37.7749,-122.4194");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
if (mapIntent.resolveActivity(getPackageManager()) != null) {
    startActivity(mapIntent);
}

Kotlin

val gmmIntentUri = Uri.parse("geo:37.7749,-122.4194")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
mapIntent.resolveActivity(packageManager)?.let {
    startActivity(mapIntent)
}

URL-codierte Abfragestrings

Alle Strings, die an die Google Maps Intents übergeben werden, müssen URI-codiert sein. Beispiel: Der String 1st & Pike, Seattle sollte zu 1st%20%26%20Pike%2C%20Seattle werden. Leerzeichen im String können mit %20 codiert oder durch ein Pluszeichen (+) ersetzt werden.

Sie können die Methode android.net.Uri encode() verwenden, um Ihre Strings zu codieren. Beispiel:

Java

Uri gmmIntentUri =
    Uri.parse("geo:37.7749,-122.4192?q=" + Uri.encode("1st & Pike, Seattle"));

Kotlin

val gmmIntentUri =
    Uri.parse("geo:37.7749,-122.4192?q=" + Uri.encode("1st & Pike, Seattle"))

Karte anzeigen

Mit dem Intent geo: können Sie eine Karte an einem bestimmten Ort und mit einem bestimmten Zoomfaktor anzeigen.

geo:latitude,longitude?z=zoom

Parameter

  • Mit latitude und longitude wird der Mittelpunkt der Karte festgelegt.
  • Mit z wird optional die anfängliche Zoomstufe der Karte festgelegt. Die zulässigen Werte reichen von 0 (die ganze Welt) bis 21 (einzelne Gebäude). Die Obergrenze kann je nach den für den ausgewählten Ort verfügbaren Kartendaten variieren.

Beispiele

Java

// Creates an Intent that loads a map of San Francisco
Uri gmmIntentUri = Uri.parse("geo:37.7749,-122.4194");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);

Kotlin

// Creates an Intent that loads a map of San Francisco
val gmmIntentUri = Uri.parse("geo:37.7749,-122.4194")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)

Nach Standort suchen

Mit diesem Intent können Sie Suchanfragen in einem bestimmten Viewport anzeigen. Wenn die Anfrage ein einzelnes Ergebnis hat, können Sie mit diesem Intent eine Markierung an einem bestimmten Ort oder einer bestimmten Adresse anzeigen, z. B. an einem Wahrzeichen, einem Unternehmen, einem geografischen Merkmal oder einer Stadt.

geo:latitude,longitude?q=query
geo:0,0?q=my+street+address
geo:0,0?q=latitude,longitude(label)

Parameter

Zusätzlich zu den Parametern, die zum Anzeigen einer Karte verwendet werden, unterstützt die Suche die folgenden Parameter:

  • Mit q werden die Orte definiert, die auf der Karte hervorgehoben werden sollen. Der Parameter q ist für alle Suchanfragen erforderlich. Als Standort wird entweder ein Ortsname oder eine Adresse akzeptiert. Der String sollte URL-codiert sein. Eine Adresse wie City Hall, New York, NY sollte also in City+Hall,New+York,NY umgewandelt werden.

  • Mit label können Sie einem Ort auf der Karte ein benutzerdefiniertes Label zuweisen. label muss als String angegeben werden.

Wenn Sie einen allgemeinen Suchbegriff übergeben, versucht Google Maps, einen Ort in der Nähe des von Ihnen angegebenen Breiten- und Längengrads zu finden, der Ihren Kriterien entspricht. Wenn kein Standort angegeben ist, versucht Google Maps, Einträge in der Nähe zu finden. Beispiel:

Java

// Search for restaurants nearby
Uri gmmIntentUri = Uri.parse("geo:0,0?q=restaurants");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
// Search for restaurants in San Francisco.
Uri gmmIntentUri = Uri.parse("geo:37.7749,-122.4194?q=restaurants");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);

Kotlin

// Search for restaurants nearby.
val gmmIntentUri = Uri.parse("geo:0,0?q=restaurants")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)
// Search for restaurants in San Francisco.
val gmmIntentUri =
    Uri.parse("geo:37.7749,-122.4194?q=restaurants")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)
Suche nach
  Restaurants in San Francisco
Abbildung 1: Suche nach Restaurants in San Francisco

Sie können die Suchergebnisse weiter gewichten, indem Sie zusammen mit dem Abfragestring einen Zoomparameter angeben. Im folgenden Beispiel wird durch das Hinzufügen eines Zooms von 10 versucht, Restaurants auf Stadtebene anstelle von in der Nähe zu finden.

Java

Uri gmmIntentUri = Uri.parse("geo:37.7749,-122.4194?z=10&q=restaurants");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);

Kotlin

val gmmIntentUri =
    Uri.parse("geo:37.7749,-122.4194?z=10&q=restaurants")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)

Wenn Sie nach einer bestimmten Adresse suchen, wird an diesem Ort eine Markierung angezeigt.

Java

Uri gmmIntentUri = Uri.parse("geo:0,0?q=1600 Amphitheatre Parkway, Mountain+View, California");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);

Kotlin

val gmmIntentUri =
    Uri.parse("geo:0,0?q=1600 Amphitheatre Parkway, Mountain+View, California")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)

Im vorherigen Beispiel werden der Breiten- und Längengrad auf 0,0 festgelegt, aber eine Adresse als Abfragestring übergeben. Wenn Sie nach einem bestimmten Ort suchen, sind Breiten- und Längengrad nicht erforderlich. Wenn Sie die genaue Adresse nicht kennen, können Sie versuchen, die Suchergebnisse durch Angabe einer Koordinate zu beeinflussen. Wenn Sie beispielsweise nach „Hauptstraße“ suchen, werden möglicherweise zu viele Ergebnisse zurückgegeben.

Java

// Searching for 'Main Street' returns too many results.
Uri gmmIntentUri = Uri.parse("geo:0,0?q=101+main+street");

Kotlin

// Searching for 'Main Street' returns too many results.
val gmmIntentUri = Uri.parse("geo:0,0?q=101+main+street")

Wenn Sie dem Intent-URI einen Längen- und Breitengrad hinzufügen, werden die Ergebnisse auf einen bestimmten Bereich ausgerichtet:

Java

// Searches for 'Main Street' near San Francisco.
Uri gmmIntentUri = Uri.parse("geo:37.7749,-122.4194?q=101+main+street");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);

Kotlin

// Searches for 'Main Street' near San Francisco.
val gmmIntentUri =
    Uri.parse("geo:37.7749,-122.4194?q=101+main+street")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)

Wenn Sie wissen, dass bei Ihrer Suche nur ein einzelner Wert zurückgegeben wird, können Sie ein optionales Label übergeben. Labels müssen als String angegeben werden und unter der Markierung auf der Karte erscheinen. Hinweis: Labels sind nur verfügbar, wenn q als Breiten- und Längengradkoordinate angegeben ist.

Java

// Display a label at the location of Google's Sydney office.
Uri gmmIntentUri = Uri.parse("geo:0,0?q=-33.8666,151.1957(Google+Sydney)");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);

Kotlin

// Display a label at the location of Google's Sydney office.
val gmmIntentUri =
    Uri.parse("geo:0,0?q=-33.8666,151.1957(Google+Sydney)")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)

Als Alternative zu einer Adresse oder einem Breiten- und Längengrad können Sie mit einem Plus Code eine Markierung an einem bekannten Ort anzeigen.

Java

// Display the location of Google, San Francisco using a global plus code.
Uri gmmIntentUri = Uri.parse("http://plus.codes/849VQJQ5+XX");
// Equivalently, define the same location using a local plus code.
gmmIntentUri = Uri.parse("https://plus.codes/QJQ5+XX,San%20Francisco");
// Construct and use the Intent as in the preceding examples.

Kotlin

// Display the location of Google, San Francisco using a global plus code.
var gmmIntentUri = Uri.parse("http://plus.codes/849VQJQ5+XX")
// Equivalently, define the same location using a local plus code.
gmmIntentUri = Uri.parse("https://plus.codes/QJQ5+XX,San%20Francisco")
// Construct and use the Intent as in the preceding examples.

Detaillierte Routenführung starten

Mit diesem Intent-URI wird die Google Maps-Navigation mit detaillierter Routenführung zur angegebenen Adresse oder Koordinate gestartet. Die Wegbeschreibung beginnt immer am aktuellen Standort des Nutzers.

google.navigation:q=a+street+address
google.navigation:q=latitude,longitude  

Parameter

  • q: Legt den Endpunkt für Navigationssuchen fest. Dieser Wert kann aus Breiten- und Längengradkoordinaten oder einer im Abfrageformat angegebenen Adresse bestehen. Wenn es sich um einen Abfragestring handelt, der mehr als ein Ergebnis zurückgibt, wird das erste Ergebnis ausgewählt.

  • Mit mode wird die Mobilitätsform festgelegt. mode ist optional und kann auf einen der folgenden Werte festgelegt werden:

    • d für die Navigation mit dem Auto (Standard)
    • b für Radfahrer
    • l für Motorräder
    • w zum Spazierengehen
  • Mit avoid werden Funktionen festgelegt, die auf der Route möglichst vermieden werden sollen. avoid ist optional und kann auf einen oder mehrere der folgenden Werte festgelegt werden:

    • t für Mautgebühren
    • h für Autobahnen
    • f für Fähren

Beispiele

Die folgenden Intent-Anfragen rufen die Turn-by-Turn-Navigation zum Taronga Zoo in Sydney, Australien, auf:

Java

Uri gmmIntentUri = Uri.parse("google.navigation:q=Taronga+Zoo,+Sydney+Australia");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);

Kotlin

val gmmIntentUri =
    Uri.parse("google.navigation:q=Taronga+Zoo,+Sydney+Australia")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)
Anfahrt zum Taronga Zoo
Abbildung 2. Route zum Taronga Zoo

Wenn Sie keine Mautgebühren zahlen oder keine Fähre nehmen möchten, können Sie eine Routenführung anfordern, bei der diese Optionen vermieden werden.

Java

Uri gmmIntentUri = Uri.parse("google.navigation:q=Taronga+Zoo,+Sydney+Australia&avoid=tf");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);

Kotlin

val gmmIntentUri =
    Uri.parse("google.navigation:q=Taronga+Zoo,+Sydney+Australia&avoid=tf")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)

Wenn Sie sich lieber etwas bewegen möchten, können Sie stattdessen eine Fahrradroute anfordern.

Java

Uri gmmIntentUri = Uri.parse("google.navigation:q=Taronga+Zoo,+Sydney+Australia&mode=b");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);

Kotlin

val gmmIntentUri =
    Uri.parse("google.navigation:q=Taronga+Zoo,+Sydney+Australia&mode=b")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)

Wenn Sie lieber mit einem motorisierten Zweirad fahren möchten, können Sie anfordern, dass die Wegbeschreibung schmale Straßen und Wege enthält, die für Autos nicht zugänglich sind. Mit dem folgenden intent wird eine Route in Indien zurückgegeben.

Java

Uri gmmIntentUri = Uri.parse("google.navigation:q=Connaught+Place,+New+Delhi,Delhi&mode=l");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);

Kotlin

val gmmIntentUri =
    Uri.parse("google.navigation:q=Connaught+Place,+New+Delhi,Delhi&mode=l")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)

Street View-Panorama anzeigen

Verwenden Sie den Intent google.streetview, um Google Street View zu starten. Google Street View bietet Panoramabilder von bestimmten Orten im Abdeckungsbereich. Außerdem sind von Nutzern bereitgestellte 360°-Bilder und Street View-Sonderkollektionen verfügbar.

google.streetview:cbll=latitude,longitude&cbp=0,bearing,0,zoom,tilt
google.streetview:panoid=id&cbp=0,bearing,0,zoom,tilt

Parameter

Alle google.streetview-URIs müssen entweder den Parameter cbll oder panoid enthalten:

  • cbll akzeptiert Breiten- und Längengrad als kommagetrennte Werte (46.414382,10.013988). In der App wird das Panorama angezeigt, das am nächsten an diesem Ort aufgenommen wurde. Da Street View-Bilder regelmäßig aktualisiert werden und Fotos jedes Mal aus leicht unterschiedlichen Positionen aufgenommen werden, kann es sein, dass Ihr Standort nach einer Aktualisierung der Bilder in einem anderen Panorama angezeigt wird.

  • panoid ist eine bestimmte Panorama-ID. Google Maps verwendet die Panorama-ID, wenn sowohl panoid als auch cbll angegeben sind. Panorama-IDs sind für eine Android-App über das StreetViewPanoramaLocation-Objekt verfügbar.

  • cbp ist ein optionaler Parameter, mit dem die anfängliche Ausrichtung der Kamera angepasst wird. Der Parameter cbp akzeptiert fünf durch Kommas getrennte Werte, die alle optional sind. Die wichtigsten Werte sind der zweite, vierte und fünfte, mit denen jeweils die Ausrichtung, der Zoom und die Neigung festgelegt werden. Der erste und der dritte Wert werden nicht unterstützt und sollten auf 0 festgelegt werden.

    • bearing: Gibt die Kompassausrichtung der Kamera in Grad im Uhrzeigersinn ab Norden an. Der geografische Norden entspricht 0, der Osten 90, der Süden 180 und der Westen
      1. Werte, die an „bearing“-Wraps übergeben werden. 0°, 360° und 720° weisen alle in dieselbe Richtung. Die Richtung wird als zweiter von fünf kommagetrennten Werten definiert.
    • zoom: Legt den Zoomfaktor der Kamera fest. Die standardmäßige Zoomstufe ist auf 0 festgelegt. Bei einem Zoom von 1 würde sich die Vergrößerung verdoppeln. Der Zoom wird auf einen Wert zwischen 0 und der maximalen Zoomstufe für das aktuelle Panorama begrenzt. Das bedeutet, dass jeder Wert, der außerhalb dieses Bereichs liegt, auf den nächstgelegenen Extremwert innerhalb des Bereichs gesetzt wird. Ein Wert von -1 wird beispielsweise auf 0 gesetzt. Der Zoom ist der vierte von fünf kommagetrennten Werten.
    • tilt: Gibt den Aufwärts- oder Abwärtswinkel der Kamera an. Der Wertebereich geht damit von 90 über 0 bis -90, wobei 90 senkrecht nach unten, 0 zentriert auf den Horizont und -90 senkrecht nach oben bedeutet.

Beispiele

Im Folgenden finden Sie einige Beispiele für die Verwendung der Street View-Absicht.

Java

// Displays an image of the Swiss Alps.
Uri gmmIntentUri = Uri.parse("google.streetview:cbll=46.414382,10.013988");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
// Uses a PanoID to show an image from Maroubra beach in Sydney, Australia.
Uri gmmIntentUri = Uri.parse("google.streetview:panoid=Iaa2JyfIggYAAAQfCZU9KQ");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
// Opens Street View between two Pyramids in Giza. The values passed to the
// cbp parameter angles the camera slightly up, and towards the east.
Uri gmmIntentUri = Uri.parse("google.streetview:cbll=29.9774614,31.1329645&cbp=0,30,0,0,-15");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);

Kotlin

// Displays an image of the Swiss Alps.
val gmmIntentUri =
    Uri.parse("google.streetview:cbll=46.414382,10.013988")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)
// Uses a PanoID to show an image from Maroubra beach in Sydney, Australia.
val gmmIntentUri =
    Uri.parse("google.streetview:panoid=Iaa2JyfIggYAAAQfCZU9KQ")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)
// Opens Street View between two Pyramids in Giza. The values passed to the
// cbp parameter angles the camera slightly up, and towards the east.
val gmmIntentUri =
    Uri.parse("google.streetview:cbll=29.9774614,31.1329645&cbp=0,30,0,0,-15")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)
Pyramiden in Street View
Abbildung 3. Pyramiden in Street View