Karten-IDs verwenden

Karten-IDs sind Kennungen, die du in der Google Cloud Console erstellst, mit einem Stil verknüpfst und dann in deinen App-Code einfügst, um diesen Stil auf deine Karte anzuwenden.

Bei der Erstellung werden Karten-IDs mit einem Projekt verknüpft. Sie sind auf eine einzelne Plattform (Android, iOS, JavaScript) oder auf die Maps Static API beschränkt.

Zum Erstellen oder Verwalten von Karten-IDs in der Cloud Console benötigst du die IAM-Rolle „Projektinhaber“ oder „Projektbearbeiter“.

Karten-ID erstellen

Eine Karten-ID ist eine eindeutige Kennung, die eine einzelne Instanz einer Google-Karte darstellt. In der Cloud Console kannst du jederzeit Karten-IDs erstellen und einen mit einer Karten-ID verknüpften Stil ändern.

So erstellst du eine Karten-ID:

  1. Rufe in der Cloud Console die Seite Kartenverwaltung auf.
  2. Klicke auf Neue Karten-ID erstellen, um das gleichnamige Formular zu öffnen.
    Neue Karten-ID erstellen

    Im Formular

    • gibst du einen Kartennamen ein,
    • gibst du einen Kartentyp oder eine Plattform an,
    • wählst du – für JavaScript-Karten – den Typ „Rasterkarte“ oder „Vektorkarte“ aus,
    • gibst du eine Beschreibung der Karte ein und
    • klickst dann auf Weiter, um die neue Karten-ID zu sehen.

Karten-ID mit einem Kartenstil verknüpfen

In dieser Anleitung wird davon ausgegangen, dass in deinem Projekt mindestens ein Kartenstil vorhanden ist.

  1. Rufe in der Cloud Console die Seite Kartenverwaltung auf.
  2. Wähle auf dieser Seite eine vorhandene Karten-ID in der Spalte Kartenname aus.
  3. Wähle unten in diesem Formular einen Kartenstil aus dem Drop-down-Menü Mit dieser Karten-ID verknüpfte Kartenstile aus.
  4. Klicke auf Speichern.
    Screenshot mit der Detailseite für eine einzelne Karten-ID, einschließlich des Drop-down-Felds, über das Nutzer einen Kartenstil mit dieser Karten-ID verknüpfen können

Karten-ID zur App hinzufügen

Du kannst deine Karten-ID mit einem <fragment>-Element in der Layoutdatei der Aktivität über die Klasse MapView oder programmatisch über die Klasse GoogleMapOptions hinzufügen.

Angenommen, du hast eine Karten-ID erstellt, die als Stringwert map_id in res/values/strings.xml gespeichert ist:

<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="map_id">YOUR_MAP_ID</string>
</resources>

Bei Karten, die über ein <fragment>-Element in der Layoutdatei der Aktivität hinzugefügt werden, muss für alle Kartenfragmente, die den benutzerdefinierten Stil haben sollen, die Karten-ID im Attribut map:mapId angegeben werden:

<fragment xmlns:map="http://schemas.android.com/apk/res-auto"
    class="com.google.android.gms.maps.SupportMapFragment"
    …
    map:mapId="@string/map_id" />

Du kannst auch das Attribut map:mapId der Klasse MapView verwenden, um eine Karten-ID festzulegen:

<com.google.android.gms.maps.MapView
    xmlns:android="http://schemas.android.com/apk/res/android"
    ....
    map:mapId="@string/map_id" />

Wenn du eine Karten-ID programmatisch angeben möchtest, übergib sie mithilfe der Klasse GoogleMapOptions an eine MapFragment-Instanz:

Java

  MapFragment mapFragment = MapFragment.newInstance(
      new GoogleMapOptions()
          .mapId(getResources().getString(R.string.map_id)));

Kotlin

  val mapFragment = MapFragment.newInstance(
      GoogleMapOptions()
          .mapId(resources.getString(R.string.map_id))
  )

Erstelle wie gewohnt deine App in Android Studio und führe sie aus. Benutzerdefinierte Stile, wie im ersten Schritt konfiguriert, werden auf alle Karten mit einer ID angewendet.