Auf dieser Seite wird erläutert, wie ein bestehendes Android Studio-Projekt für das Maps SDK for Android konfiguriert werden kann, und zwar ohne die in der Kurzanleitung beschriebene Google Maps-Vorlage.
Mit der Vorlage wird ein neues Android Studio-Projekt automatisch konfiguriert. Gleichzeitig wird auch eine Basiskarte eingebunden. Sie haben jedoch auch die Möglichkeit, in ein Android-Projekt eine Karte einzubinden, für die eine andere Android Studio-Vorlage verwendet wird. Dazu müssen Sie Ihr Projekt manuell konfigurieren und dann die Karte hinzufügen.
Schritt 1: Android Studio einrichten
- Android Studio Arctic Fox oder höher ist erforderlich. Falls noch nicht geschehen, müssen Sie diese Version von Android Studio herunterladen und installieren.
- Es muss mindestens Version 7.0 des Android-Gradle-Plug-ins in Android Studio verwendet werden.
Schritt 2: SDK einrichten
Die Maps SDK for Android-Bibliothek ist über das Maven-Repository von Google verfügbar. So fügen Sie das SDK der App hinzu:
- Fügen Sie in der Datei
settings.gradle
auf oberster Ebene das Portal für Gradle-Plug-ins, Maven-Repository von Google und Maven Central Repository unter dempluginManagement
-Block ein. DerpluginManagement
-Block muss vor allen anderen Anweisungen im Skript eingefügt werden.pluginManagement { repositories { gradlePluginPortal() google() mavenCentral() } }
- Fügen Sie in der Datei
settings.gradle
auf oberster Ebene das Maven-Repository von Google und das Maven Central Repository unter demdependencyResolutionManagement
-Block ein:dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() } }
- Fügen Sie in der Datei
build.gradle
auf Modulebene die Abhängigkeit für Google Play-Dienste für das Maps SDK for Android ein.dependencies { implementation 'com.google.android.gms:play-services-maps:18.1.0' // ... }
- Legen Sie in der Datei
build.gradle
auf Modulebene fürcompileSdk
undminSdk
die folgenden Werte fest:android { compileSdk 31 defaultConfig { minSdk 19 // ... }
Schritt 3: API-Schlüssel zum Projekt hinzufügen
In diesem Abschnitt wird beschrieben, wie Sie Ihren API-Schlüssel speichern, damit er von Ihrer App sicherer referenziert werden kann. Er sollte nicht in Ihrem Versionsverwaltungssystem eingecheckt werden. Stattdessen empfehlen wir Ihnen, ihn im Stammverzeichnis Ihres Projekts in der Datei local.properties
zu speichern. Weitere Informationen zur Datei local.properties
finden Sie unter Gradle properties files.
Sie können das Secrets Gradle Plugin for Android verwenden, um diese Aufgabe zu optimieren. So installieren Sie das Plug-in und speichern Ihren API-Schlüssel:
- Öffnen Sie in Android Studio die Datei
build.gradle
auf Projektebene und fügen Sie folgenden Code in das Elementdependencies
unterbuildscript
ein:plugins { // ... id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin' version '2.0.1' apply false }
- Öffnen Sie dann die Datei
build.gradle
auf Modulebene und fügen Sie dem Elementplugins
den folgenden Code hinzu:id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin'
- Speichern Sie die Datei und synchronisieren Sie Ihr Projekt mit Gradle.
- Öffnen Sie die Datei
local.properties
in Ihrem Verzeichnis auf Projektebene, fügen Sie den folgenden Code ein und ersetzen Sie dabeiYOUR_API_KEY
durch Ihren eigenen API-Schlüssel:MAPS_API_KEY=YOUR_API_KEY
- Speichern Sie die Datei.
- Gehen Sie in der Datei
AndroidManifest.xml
zucom.google.android.geo.API_KEY
und nehmen Sie folgende Änderungen amandroid:value attribute
vor:<meta-data android:name="com.google.android.geo.API_KEY" android:value="${MAPS_API_KEY}" />
Hinweis: Für den API-Schlüssel wird com.google.android.geo.API_KEY
als Metadatenname empfohlen (siehe oben). Ein Schlüssel mit diesem Namen kann zur Authentifizierung bei mehreren Google Maps-basierten APIs auf der Android-Plattform verwendet werden, einschließlich Maps SDK for Android. Aus Gründen der Abwärtskompatibilität unterstützt die API auch den Namen com.google.android.maps.v2.API_KEY
. Für diesen alten Namen wird nur die Authentifizierung bei Version 2 der Android Maps API unterstützt. In der Anwendung kann nur einer der Metadatennamen für den API-Schlüssel festgelegt werden. Falls beide angegeben werden, gibt die API eine Ausnahme aus.
Schritt 4: App-Manifest aktualisieren
In diesem Abschnitt werden die Einstellungen erläutert, die in der Datei AndroidManifest.xml
festgelegt werden müssen.
Versionsnummer der Google Play-Dienste
Fügen Sie die folgende Deklaration im application
-Element ein. Damit wird die Version der Google Play-Dienste eingebettet, mit der die App kompiliert wurde.
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
Berechtigung zur Standortermittlung
Wenn die App auf den Standort des Nutzers zugreifen soll, müssen Sie die Berechtigung zur Standortermittlung in der Datei AndroidManifest.xml
anfordern. Zur Auswahl stehen ACCESS_FINE_LOCATION
, mit dem der genaue Gerätestandort angegeben wird, und ACCESS_COARSE_LOCATION
, mit dem ein weniger präziser Standort angegeben wird. Weitere Informationen finden Sie im Leitfaden zu Standortdaten.
Fügen Sie dem manifest
-Element folgenden Code hinzu, um die Berechtigung ACCESS_FINE_LOCATION
anzufordern:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
Berechtigung zum externen Speichern
Wenn Sie für Ihre App Version 8.3 oder höher des Google Play Services SDK vorgeben, ist die Berechtigung WRITE_EXTERNAL_STORAGE
nicht erforderlich. Wenn Sie eine ältere Version des Google Play Services SDK vorgeben, müssen Sie die Berechtigung WRITE_EXTERNAL_STORAGE anfordern, und zwar im manifest
-Element.
<uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Apache HTTP Legacy-Bibliothek
Wenn Sie com.google.android.gms:play-services-maps:16.0.0
oder niedriger verwenden und für Ihre App API-Level 28 (Android 9.0) oder höher angeben, müssen Sie die folgende Deklaration im <application>
-Element von AndroidManifest.xml
angeben. Andernfalls können Sie diese Deklaration weglassen.
<uses-library
android:name="org.apache.http.legacy"
android:required="false" />
Schritt 5: Android-Gerät einrichten
Um eine App auszuführen, in der das Maps SDK for Android verwendet wird, müssen Sie sie auf einem Android-Gerät oder einem Android Emulator bereitstellen, das bzw. der auf Android 4.0 oder höher basiert und Google APIs enthält.
- Wenn Sie ein Android-Gerät verwenden möchten, folgen Sie der Anleitung zum Ausführen von Apps auf einem Hardwaregerät: Run apps on a hardware device.
- Wenn Sie einen Android Emulator verwenden möchten, können Sie ein virtuelles Gerät erstellen und den Emulator mit dem AVD Manager für virtuelle Android-Geräte installieren, der in Android Studio enthalten ist.
Nächster Schritt
Sobald Ihr Projekt konfiguriert ist, können Sie eine Karte hinzufügen.