Aby skonfigurować aplikację do korzystania z pakietu Places SDK for Android, wykonaj te czynności. Są one wymagane we wszystkich aplikacjach korzystających z pakietu Places SDK for Android.
Krok 1. Skonfiguruj Android Studio
W tym dokumencie opisano środowisko programistyczne korzystające z Android Studio Hedgehog i wtyczki Androida do obsługi Gradle w wersji 8.2.
Krok 2. Konfigurowanie pakietu SDK
Biblioteka pakietu Places SDK na Androida jest dostępna w repozytorium Maven Google. Aby dodać pakiet SDK do aplikacji:
- W pliku
settings.gradle.ktsnajwyższego poziomu w blokupluginManagementdodaj portal wtyczek Gradle, repozytorium Google Maven i centralne repozytorium Maven. BlokpluginManagementmusi pojawić się przed innymi instrukcjami w skrypcie.pluginManagement { repositories { google() mavenCentral() gradlePluginPortal() } }
- W pliku
settings.gradle.ktsnajwyższego poziomu dodaj repozytorium Maven firmy Google i centralne repozytorium Maven w blokudependencyResolutionManagement:dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.PREFER_SETTINGS) repositories { google() mavenCentral() } }
-
W sekcji
dependenciesplikubuild.gradle.ktsna poziomie modułu dodaj zależność do pakietu SDK Miejsc na Androida:Zakręcony
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") }
- W pliku
build.gradle.ktsna poziomie modułu ustawcompileSdkiminSdkna te wartości:Zakręcony
android { compileSdk 34 defaultConfig { minSdk 23 // ... } }
Kotlin
android { compileSdk = 34 defaultConfig { minSdk = 23 // ... } }
- W sekcji
buildFeaturesplikubuild.gradlena poziomie modułu dodaj klasęBuildConfig, której użyjesz do uzyskania dostępu do wartości metadanych zdefiniowanych w dalszej części tej procedury:Zakręcony
android { // ... buildFeatures { buildConfig true // ... } }
Kotlin
android { // ... buildFeatures { buildConfig = true // ... } }
Krok 3. Dodaj klucz interfejsu API do projektu
W tej sekcji opisano, jak przechowywać klucz interfejsu API, aby aplikacja mogła się do niego bezpiecznie odwoływać. Nie należy sprawdzać klucza interfejsu API w systemie kontroli wersji, dlatego zalecamy przechowywanie go w pliku secrets.properties w katalogu głównym projektu i wykluczenie tego pliku z kontroli wersji. Więcej informacji o plikach właściwości Gradle znajdziesz w artykule na ten temat.
Aby uprościć to zadanie, zalecamy użycie wtyczki Secrets Gradle do Androida.
Aby zainstalować wtyczkę Gradle obiektów tajnych dla Androida i zapisać klucz interfejsu API:
-
W Android Studio otwórz plik
build.gradle.ktslubbuild.gradlenajwyższego poziomu i dodaj ten kod do blokuplugins.Kotlin
plugins { // ... id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin") version "2.0.1" apply false }
Zakręcony
plugins { // ... id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin' version '2.0.1' apply false }
-
Otwórz plik
build.gradle.ktslubbuild.gradlena poziomie modułu i dodaj ten kod do elementuplugins.Kotlin
plugins { id("com.android.application") // ... id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin") }
Zakręcony
plugins { id 'com.android.application' // ... id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin' }
- Jeśli używasz Android Studio, zsynchronizuj projekt z Gradle.
-
Otwórz plik
secrets.propertiesw katalogu najwyższego poziomu i dodaj podany niżej kod. ZastąpYOUR_API_KEYkluczem interfejsu API. Dodajsecrets.propertiesdo pliku.gitignore(lub w inny sposób wyklucz go z systemu kontroli wersji), aby nie sprawdzać klucza interfejsu API w systemie kontroli wersji.PLACES_API_KEY=YOUR_API_KEY
-
Utwórz plik
local.defaults.propertiesw katalogu najwyższego poziomu, czyli w tym samym folderze, w którym znajduje się pliksecrets.properties, a następnie dodaj podany niżej kod.PLACES_API_KEY=DEFAULT_API_KEY
Ten plik służy do podania zapasowej lokalizacji klucza interfejsu API, jeśli nie można znaleźć pliku
secrets.properties, aby kompilacje nie kończyły się niepowodzeniem. Może się tak zdarzyć, jeśli sklonujesz aplikację z systemu kontroli wersji, który pomija pliksecrets.properties, i nie utworzysz jeszcze lokalnie plikusecrets.properties, aby podać klucz interfejsu API. -
W Android Studio otwórz plik
build.gradle.ktslubbuild.gradlena poziomie modułu i edytuj właściwośćsecrets. Jeśli właściwośćsecretsnie istnieje, dodaj ją.Edytuj właściwości wtyczki, aby ustawić
propertiesFileNamena"secrets.properties",defaultPropertiesFileNamena"local.defaults.properties"i skonfigurować inne właściwości.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" }
Zakręcony
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" }
Krok 4. Inicjowanie klienta Places API
Aby zainicjować pakiet Places SDK for Android w aktywności lub fragmencie, przekaż klucz interfejsu API podczas wywoływania metody 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);
Możesz już zacząć korzystać z pakietu SDK Miejsc na Androida.
Krok 5. Skonfiguruj urządzenie z Androidem
Aby uruchomić aplikację, która korzysta z pakietu Places SDK for Android, musisz ją wdrożyć na urządzeniu z Androidem lub w emulatorze Androida z systemem Android 6.0 lub nowszym i interfejsami API Google.
- Aby użyć urządzenia z Androidem, postępuj zgodnie z instrukcjami podanymi w artykule Uruchamianie aplikacji na urządzeniu.
- Aby używać Android Emulator, możesz utworzyć urządzenie wirtualne i zainstalować emulator za pomocą Menedżera urządzeń, który jest częścią Android Studio.