Android Studio-Projekt einrichten

So konfigurieren Sie Ihre App für die Verwendung des Places SDK for Android: Diese Schritte sind für alle Apps erforderlich, die das Places SDK for Android verwenden.

Schritt 1: Android Studio einrichten

In diesem Dokument wird eine Entwicklungsumgebung mit Android Studio Hedgehog und Version 8.2 des Android-Gradle-Plug-ins beschrieben.

Schritt 2: SDK einrichten

Die Places SDK for Android-Bibliothek ist über das Maven-Repository von Google verfügbar. So fügen Sie das SDK der App hinzu:

  1. Fügen Sie in der Datei settings.gradle.kts auf oberster Ebene das Portal für Gradle-Plug-ins, das Maven-Repository von Google und das Maven Central Repository unter dem pluginManagement-Block ein. Der pluginManagement-Block muss vor allen anderen Anweisungen im Script eingefügt werden.
    pluginManagement {
        repositories {
            google()
            mavenCentral()
            gradlePluginPortal()
        }
    } 
  2. Fügen Sie in der Datei settings.gradle.kts auf oberster Ebene das Maven-Repository von Google und das Maven Central Repository unter dem dependencyResolutionManagement Block ein:
    dependencyResolutionManagement {
        repositoriesMode.set(RepositoriesMode.PREFER_SETTINGS)
        repositories {
            google()
            mavenCentral()
        }
    } 
  3. Fügen Sie im Abschnitt dependencies Ihrer Datei build.gradle.kts auf build.gradle.kts eine Abhängigkeit zum Places SDK for Android hinzu:

    Groovy

    dependencies {
        implementation(platform("org.jetbrains.kotlin:kotlin-bom:$kotlin_version"))
        implementation("com.google.android.libraries.places:places:3.5.0")
    }

    Kotlin

              dependencies {
    
        // Places and Maps SDKs
        implementation("com.google.android.libraries.places:places:6.0.2")
    }
  4. Legen Sie in der Datei build.gradle.kts auf Modulebene für compileSdk und minSdk die folgenden Werte fest:

    Groovy

    android {
        compileSdk 34
    
        defaultConfig {
            minSdk 23
            // ...
        }
    }

    Kotlin

    android {
        compileSdk = 34
    
        defaultConfig {
            minSdk = 23
            // ...
        }
    }
  5. Fügen Sie im Abschnitt buildFeatures der Datei build.gradle auf Modulebene die Klasse BuildConfig hinzu, die verwendet werden kann, um auf Metadatenwerte zuzugreifen, die später in diesem Verfahren definiert werden:

    Groovy

    android {
      // ...
      buildFeatures {
        buildConfig true
        // ...
      }
    }

    Kotlin

    android {
      // ...
      buildFeatures {
        buildConfig = true
        // ...
      }
    }

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 sicher referenziert werden kann. Er sollte nicht in Ihrem Versionsverwaltungssystem eingecheckt werden. Stattdessen empfehlen wir Ihnen, ihn im Stammverzeichnis Ihres Projekts in der Datei secrets.properties zu speichern und diese Datei von der Versionsverwaltung auszuschließen. Weitere Informationen zu Gradle Eigenschaftsdateien finden Sie unter Gradle properties files.

Sie können das Secrets Gradle-Plug-in für Android verwenden, um diese Aufgabe zu vereinfachen.

So installieren Sie das Secrets Gradle-Plug-in für Android und speichern Ihren API-Schlüssel:

  1. Öffnen Sie in Android Studio die Datei build.gradle.kts oder build.gradle auf oberster Ebene und fügen Sie den folgenden Code in den Block plugins ein.

    Kotlin

    plugins {
        // ...
        id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin") version "2.0.1" apply false
    }

    Groovy

    plugins {
        // ...
        id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin' version '2.0.1' apply false
    }
  2. Öffnen Sie die Datei auf Modulebene build.gradle.kts oder build.gradle und fügen Sie den folgenden Code in das plugins Element ein.

    Kotlin

    plugins {
        id("com.android.application")
        // ...
        id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin")
    }

    Groovy

    plugins {
        id 'com.android.application'
        // ...
        id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin'
    }
  3. Wenn Sie Android Studio, synchronisieren Sie Ihr Projekt mit Gradle.
  4. Öffnen Sie die Datei secrets.properties im Verzeichnis der obersten Ebene, und fügen Sie den folgenden Code ein. Ersetzen Sie YOUR_API_KEY durch Ihren API-Schlüssel. Stellen Sie sicher, dass Sie secrets.properties zu Ihrer .gitignore Datei hinzufügen oder sie auf andere Weise aus Ihrem Versions verwaltungssystem ausschließen, damit Sie Ihren API-Schlüssel nicht in die Versionsverwaltung einchecken.
    PLACES_API_KEY=YOUR_API_KEY
  5. Erstellen Sie die Datei local.defaults.properties im Verzeichnis der obersten Ebene, im selben Ordner wie die Datei secrets.properties und fügen Sie folgenden Code ein.

    PLACES_API_KEY=DEFAULT_API_KEY

    Diese Datei ist ein Ersatzspeicherort für den API-Schlüssel damit Builds nicht fehlschlagen, falls die Datei secrets.properties nicht gefunden wird. Das kann passieren, wenn Sie die App aus einem Versionsverwaltungssystem klonen, in dem secrets.properties nicht vorhanden ist, und noch keine lokale Datei secrets.properties erstellt haben, um Ihren API-Schlüssel bereitzustellen.

  6. Öffnen Sie in Android Studio die Datei auf Modulebene build.gradle.kts oder build.gradle und bearbeiten Sie die Eigenschaft secrets. Wenn die Eigenschaft secrets nicht vorhanden ist, fügen Sie sie hinzu.

    Bearbeiten Sie die Eigenschaften des Plug-ins, um propertiesFileName auf "secrets.properties" festzulegen, defaultPropertiesFileName auf "local.defaults.properties" festzulegen. Legen Sie auch alle anderen Eigenschaften fest.

    Kotlin

    secrets {
        // To add your Maps API key to this project:
        // 1. If the secrets.properties file does not exist, create it in the root directory (the same folder as the root local.properties file).
        // 2. Add this line, where YOUR_API_KEY is your API key:
        //        MAPS_API_KEY=YOUR_API_KEY
        propertiesFileName = "secrets.properties"
    
        // A properties file containing default secret values. This file can be
        // checked in version control.
        defaultPropertiesFileName = "local.defaults.properties"
    }

    Groovy

    secrets {
        // To add your Maps API key to this project:
        // 1. If the secrets.properties file does not exist, create it in the root directory (the same folder as the root local.properties file).
        // 2. Add this line, where YOUR_API_KEY is your API key:
        //        MAPS_API_KEY=YOUR_API_KEY
        propertiesFileName = "secrets.properties"
    
        // A properties file containing default secret values. This file can be
        // checked in version control.
        defaultPropertiesFileName = "local.defaults.properties"
    }

Schritt 4: Places API-Client initialisieren

Wenn Sie das Places SDK for Android in einer Aktivität oder einem Fragment initialisieren möchten, übergeben Sie den API-Schlüssel beim Aufrufen von Places.initializeWithNewPlacesApiEnabled():

Kotlin

    // Define a variable to hold the Places API key.
    val apiKey = BuildConfig.PLACES_API_KEY

    // Log an error if apiKey is not set.
    if (apiKey.isEmpty() || apiKey == "DEFAULT_API_KEY") {
        Log.e("Places test", "No api key")
        finish()
        return
    }

    // Initialize the SDK
    Places.initializeWithNewPlacesApiEnabled(applicationContext, apiKey)

    // Create a new PlacesClient instance
    val placesClient = Places.createClient(this)
    

Java

    // Define a variable to hold the Places API key.
    String apiKey = BuildConfig.PLACES_API_KEY;

    // Log an error if apiKey is not set.
    if (TextUtils.isEmpty(apiKey) || apiKey.equals("DEFAULT_API_KEY")) {
      Log.e("Places test", "No api key");
      finish();
      return;
    }

    // Initialize the SDK
    Places.initializeWithNewPlacesApiEnabled(getApplicationContext(), apiKey);

    // Create a new PlacesClient instance
    PlacesClient placesClient = Places.createClient(this);
    

Sie können jetzt mit der Verwendung des Places SDK for Android beginnen.

Schritt 5: Android-Gerät einrichten

Um eine App auszuführen, in der das Places SDK for Android verwendet wird, müssen Sie sie auf einem Android Gerät oder einem Android Emulator bereitstellen, das bzw. der auf Android 6.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 Gerätemanager installieren, der in Android Studio enthalten ist.

Nächste Schritte

Nachdem Ihr Projekt konfiguriert wurde, können Sie sich die Beispiel-Apps ansehen.