Aby skonfigurować aplikację do korzystania z pakietu SDK Miejsc na Androida, wykonaj te czynności kroków. Są one wymagane w przypadku wszystkich aplikacji korzystających z pakietu SDK Miejsc na Androida.
Krok 1. Skonfiguruj Android Studio
W tym dokumencie opisujemy środowisko programistyczne, w którym Android Studio Hedgehog oraz Wtyczka Androida do obsługi Gradle wersji 8.2.
Krok 2. Konfigurowanie pakietu SDK
Biblioteka Places SDK dla Androida jest dostępna repozytorium Google Maven. Do Dodaj pakiet SDK do swojej aplikacji, wykonaj te czynności:
- W pliku
settings.gradle
najwyższego poziomu umieść w nim portal wtyczek Gradle, repozytorium Google Maven, i centralne repozytorium Maven. w ramach blokupluginManagement
. BlokpluginManagement
musi występować przed innymi stwierdzeniami w skrypcie.pluginManagement { repositories { gradlePluginPortal() google() mavenCentral() } }
- W pliku
settings.gradle
najwyższego poziomu umieść w nim Repozytorium Google Maven i centralne repozytorium Maven. w blokudependencyResolutionManagement
:dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() } }
-
W:
dependencies
w plikubuild.gradle
na poziomie modułu dodaj zależność do pakietu SDK Miejsc na Androida:Zakręcony
dependencies { // If updating kotlin-bom version number above, also edit project-level build.gradle definition of $kotlin_version variable implementation(platform("org.jetbrains.kotlin:kotlin-bom:$kotlin_version")) implementation 'com.google.android.libraries.places:places:3.3.0' }
Kotlin
dependencies { implementation(platform("org.jetbrains.kotlin:kotlin-bom:$kotlin_version")) implementation("com.google.android.libraries.places:places:3.5.0") }
- W pliku
build.gradle
na poziomie modułu ustawcompileSdk
iminSdk
na te wartości:Zakręcony
android { compileSdk 34 defaultConfig { minSdk 21 // ... } }
Kotlin
android { compileSdk = 34 defaultConfig { minSdk = 21 // ... } }
- W sekcji
buildFeatures
plikubuild.gradle
na poziomie modułu dodaj klasęBuildConfig
, która służy do uzyskiwania dostępu do wartości metadanych zdefiniowanych później w ramach 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 zapisać klucz interfejsu API, aby umożliwić bezpieczne korzystanie z niego
do aplikacji. Nie sprawdzaj klucza interfejsu API w systemie kontroli wersji, dlatego zalecamy
i przechowywanie go w pliku secrets.properties
, który znajduje się w katalogu głównym instancji
w projektach AI. Więcej informacji o pliku secrets.properties
znajdziesz tutaj:
Pliki właściwości Gradle.
Aby usprawnić to zadanie, zalecamy skorzystanie z Wtyczka Gradle obiektów tajnych na Androida.
Aby zainstalować wtyczkę Gradle obiektów tajnych na Androida w projekcie Map Google:
-
W Android Studio otwórz
build.gradle
lubbuild.gradle.kts
najwyższego poziomu. i dodaj ten kod do elementudependencies
podbuildscript
Zakręcony
buildscript { dependencies { classpath "com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin:2.0.1" } }
Kotlin
buildscript { dependencies { classpath("com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin:2.0.1") } }
-
Otwórz plik
build.gradle
na poziomie modułu i dodaj poniższy kod do sekcjiplugins
.Zakręcony
plugins { // ... id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin' }
Kotlin
plugins { id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin") }
- W pliku
build.gradle
na poziomie modułu sprawdź, czytargetSdk
orazcompileSdk
mają wartość 34. - Zapisz plik i zsynchronizować projekt z Gradle.
-
Otwórz plik
secrets.properties
w katalogu najwyższego poziomu, a następnie dodaj tego kodu. ZastąpYOUR_API_KEY
swoim kluczem interfejsu API. Przechowuj klucz w tym pliku ponieważsecrets.properties
nie jest sprawdzany w kontroli wersji systemu.PLACES_API_KEY=YOUR_API_KEY
- Zapisz plik.
-
Utwórz plik
local.defaults.properties
w katalogu najwyższego poziomu, tak samo jako pliksecrets.properties
, a potem dodaj podany niżej kod.PLACES_API_KEY=DEFAULT_API_KEY
Ten plik ma na celu udostępnienie zapasowej lokalizacji klucza interfejsu API, jeśli plik Nie znaleziono pliku
secrets.properties
, więc kompilacje nie zawierają błędów. Może się tak zdarzyć, jeśli sklonujesz aplikację z systemu kontroli wersji, który pomijasecrets.properties
oraz nie utworzyłeś jeszcze lokalnie plikusecrets.properties
, który umożliwi przesyłanie klucz interfejsu API. - Zapisz plik.
-
W Android Studio otwórz
build.gradle
na poziomie modułu lubbuild.gradle.kts
i edytuj właściwośćsecrets
. Jeśli Właściwośćsecrets
nie istnieje. Dodaj ją.Edytuj właściwości wtyczki, aby ustawić
propertiesFileName
nasecrets.properties
, ustawdefaultPropertiesFileName
nalocal.defaults.properties
i ustaw pozostałe właściwości.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 same folder as the 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" // Configure which keys should be ignored by the plugin by providing regular expressions. // "sdk.dir" is ignored by default. ignoreList.add("keyToIgnore") // Ignore the key "keyToIgnore" ignoreList.add("sdk.*") // Ignore all keys matching the regexp "sdk.*" }
Kotlin
secrets { // To add your Maps API key to this project: // 1. If the secrets.properties file does not exist, create it in the same folder as the 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" // Configure which keys should be ignored by the plugin by providing regular expressions. // "sdk.dir" is ignored by default. ignoreList.add("keyToIgnore") // Ignore the key "keyToIgnore" ignoreList.add("sdk.*") // Ignore all keys matching the regexp "sdk.*" }
Krok 4. Inicjowanie klienta interfejsu Places API
Zainicjuj pakiet Places SDK dla Androida w aktywności lub fragmencie. Najpierw musisz wybierz wersję pakietu SDK, której chcesz użyć: Places SDK dla Androida lub Pakiet SDK Miejsc na Androida (nowość). Aby uzyskać więcej informacji o wersjach usługi, Więcej informacji znajdziesz w artykule Wybieranie wersji pakietu SDK.
Z przykładu poniżej dowiesz się, jak zainicjować pakiet SDK w obu wersjach.Pakiet SDK Miejsc na Androida (nowość)
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);
Pakiet SDK Miejsc na Androida
Przekaż klucz interfejsu API podczas wywoływania
Places.initialize()
:
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.initialize(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.initialize(getApplicationContext(), apiKey); // Create a new PlacesClient instance PlacesClient placesClient = Places.createClient(this);
Możesz już zacząć korzystać z pakietu SDK Miejsc dla systemu Android.
Krok 5. Skonfiguruj urządzenie z Androidem
Aby uruchomić aplikację, która korzysta z pakietu SDK Miejsc dla Androida, należy wdrożyć ją na urządzeniu z Androidem lub na urządzeniu z Androidem emulator oparty na Androidzie 5.0 lub nowszym i obejmuje interfejsów API Google.
- Aby użyć urządzenia z Androidem, postępuj zgodnie z instrukcjami na stronie Uruchamianie aplikacji na urządzeniu
- Aby użyć emulatora Androida, możesz utworzyć urządzenie wirtualne i zainstalować emulator za pomocą: Menedżer urządzeń wirtualnych z Androidem (AVD), dostępne w Android Studio.