Aby skonfigurować aplikację do korzystania z pakietu SDK Miejsc na Androida, wykonaj te czynności. Są one wymagane w przypadku wszystkich aplikacji korzystających z pakietu SDK Miejsc na Androida.
Krok 1. Skonfiguruj Android Studio
Ten dokument opisuje ś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 SDK Miejsc na Androida jest dostępna w repozytorium Maven Google. Aby dodać pakiet SDK do aplikacji:
- W pliku
settings.gradle.ktsnajwyższego poziomu dodaj portal wtyczek Gradle, repozytorium Google Maven, i centralne repozytorium Maven w blokupluginManagement. BlokpluginManagementmusi występować 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
dependenciesbuild.gradle.ktspliku na poziomie modułu dodaj zależność od pakietu SDK Miejsc na Androida: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") }
- W pliku
build.gradle.ktsna poziomie modułu ustawcompileSdkiminSdkna te wartości:Groovy
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żywasz do uzyskiwania dostępu do wartości metadanych zdefiniowanych później w tej procedurze:Groovy
android { // ... buildFeatures { buildConfig true // ... } }
Kotlin
android { // ... buildFeatures { buildConfig = true // ... } }
Krok 3. Dodaj klucz interfejsu API do projektu
W tej sekcji opisujemy, jak przechowywać klucz interfejsu API, aby aplikacja mogła się do niego bezpiecznie odwoływać. Nie należy dodawać klucza interfejsu API do systemu 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
Pliki właściwości Gradle.
Aby uprościć to zadanie, zalecamy użycie wtyczki Gradle obiektów tajnych dla 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 }
Groovy
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") }
Groovy
plugins { id 'com.android.application' // ... id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin' }
- Jeśli używasz Android Studio, zsynchronizuj swój projekt z Gradle.
-
Otwórz plik
secrets.propertiesw katalogu najwyższego poziomu, a następnie dodaj ten kod. ZastąpYOUR_API_KEYswoim kluczem interfejsu API. Pamiętaj, aby dodaćsecrets.propertiesdo swojego.gitignorepliku (lub w inny sposób wykluczyć go z systemu kontroli wersji), aby nie dodawać klucza interfejsu API do kontroli wersji.PLACES_API_KEY=YOUR_API_KEY
-
Utwórz plik
local.defaults.propertiesw katalogu najwyższego poziomu, w tym samym folderze co pliksecrets.properties, a następnie dodaj ten kod.PLACES_API_KEY=DEFAULT_API_KEY
Ten plik ma na celu zapewnienie lokalizacji kopii zapasowej klucza interfejsu API jeśli plik
secrets.propertiesnie zostanie znaleziony, aby kompilacje nie kończyły się niepowodzeniem. Może się to zdarzyć, jeśli sklonujesz aplikację z systemu kontroli wersji , który pomijasecrets.propertiesi nie masz jeszcze lokalnie utworzonego 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", ustawdefaultPropertiesFileNamena"local.defaults.properties", i 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" }
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" }
Krok 4. Inicjowanie klienta interfejsu Places API
Aby zainicjować pakiet SDK Miejsc na Androida w aktywności lub fragmencie, przekaż klucz interfejsu API podczas wywoływania
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ę korzystającą z pakietu SDK Miejsc na Androida, musisz wdrożyć ją na urządzeniu z Androidem lub emulatorze Androida, który jest oparty na Androidzie 6.0 lub nowszym i zawiera interfejsy API Google.
- Aby używać urządzenia z Androidem, postępuj zgodnie z instrukcjami w artykule Uruchamianie aplikacji na urządzeniu fizycznym.
- 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.