Чтобы настроить приложение для использования Places SDK для Android, выполните следующие действия. Они необходимы для всех приложений, использующих Places SDK для Android.
Шаг 1. Настройте Android Studio
- Требуется Android Studio Arctic Fox или более поздняя версия. Если вы еще этого не сделали, скачайте и установите его.
- Убедитесь, что вы используете плагин Android Gradle версии 7.0 или более поздней версии в Android Studio.
Шаг 2. Настройте SDK
Библиотека Places SDK для Android доступна в репозитории Google Maven . Чтобы добавить SDK в ваше приложение, выполните следующие действия:
- В файле
settings.gradle
верхнего уровня включите портал плагинов Gradle , репозиторий Google Maven и центральный репозиторий Maven в блокеpluginManagement
. БлокpluginManagement
должен появляться перед любыми другими операторами в скрипте.pluginManagement { repositories { gradlePluginPortal() google() mavenCentral() } }
- В файле
settings.gradle
верхнего уровня включите репозиторий Google Maven и центральный репозиторий Maven в блокdependencyResolutionManagement
:dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() } }
В разделе
dependencies
файлаbuild.gradle
на уровне модуля добавьте зависимость к Places SDK для Android:dependencies { implementation(platform("org.jetbrains.kotlin:kotlin-bom:$kotlin_version")) implementation 'com.google.android.libraries.places:places:3.3.0' }
- В файле
build.gradle
на уровне модуля установите дляcompileSdk
иminSdk
следующие значения:android { compileSdk 31 defaultConfig { minSdk 21 // ... }
Шаг 3. Добавьте ключ API в проект.
В этом разделе описывается, как хранить ключ API, чтобы ваше приложение могло безопасно ссылаться на него. Вам не следует проверять свой ключ API в системе контроля версий, поэтому мы рекомендуем хранить его в файле
secrets.properties
, который находится в корневом каталоге вашего проекта. Дополнительные сведения о файлеsecrets.properties
см. в разделе Файлы свойств Gradle .Чтобы упростить эту задачу, мы рекомендуем использовать плагин Secrets Gradle для Android .
Чтобы установить плагин Secrets Gradle для Android в свой проект Google Maps:
- В Android Studio откройте файл
build.gradle
уровня проекта и добавьте следующий код в элементdependencies
вbuildscript
.классный
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") } }
-
Open your module-level
build.gradle
file and add the following code to theplugins
element.Groovy
plugins { // ... id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin' }
Kotlin
plugins { id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin") }
- Save the file and sync your project with Gradle.
-
Open the
secrets.properties
in your project level directory, and then add the following code. ReplaceYOUR_API_KEY
with your API key.MAPS_API_KEY=YOUR_API_KEY
- Сохраните файл.
- В файле
AndroidManifest.xml
перейдите по адресуcom.google.android.geo.API_KEY
и обновитеandroid:value attribute
следующим образом:<meta-data android:name="com.google.android.geo.API_KEY" android:value="${MAPS_API_KEY}" />
-
Optionally edit the properties of the plugin to specify a different secrets file or other properties. In Android Studio, open your project-level
build.gradle
file and edit thesecrets
property:Groovy
secrets { // Optionally specify a different file name containing your secrets. // The plugin defaults to "local.properties" 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.*" }
Котлин
secrets { // Optionally specify a different file name containing your secrets. // The plugin defaults to "local.properties" 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.*" }
Примечание. Как показано выше,
com.google.android.geo.API_KEY
— рекомендуемое имя метаданных для ключа API. Ключ с этим именем можно использовать для аутентификации в нескольких API-интерфейсах Google Maps на платформе Android, включая Places SDK для Android. Для обратной совместимости API также поддерживает имяcom.google.android.maps.v2.API_KEY
. Это устаревшее имя позволяет выполнять аутентификацию только с помощью Android Maps API v2. Приложение может указать только одно из имен метаданных ключа API. Если указаны оба, API выдает исключение.Шаг 4. Инициализируйте клиент Places API
Инициализируйте Places SDK для Android в действии или фрагменте. Сначала вам необходимо решить, какую версию SDK использовать: Places SDK для Android или Places SDK для Android (новая). Дополнительную информацию о версиях продукта см. в разделе Выбор версии SDK .
В следующем примере показано, как инициализировать SDK для обеих версий.Places SDK для Android (новинка)
Передайте ключ API при вызове
Places.initializeWithNewPlacesApiEnabled()
:Котлин
// Initialize the SDK Places.initializeWithNewPlacesApiEnabled(applicationContext, apiKey) // Create a new PlacesClient instance val placesClient = Places.createClient(this)
Джава
// Initialize the SDK Places.initializeWithNewPlacesApiEnabled(getApplicationContext(), apiKey); // Create a new PlacesClient instance PlacesClient placesClient = Places.createClient(this);
SDK Адресов для Android
Передайте ключ API при вызове
Places.initialize()
:Котлин
// Initialize the SDK Places.initialize(applicationContext, apiKey) // Create a new PlacesClient instance val placesClient = Places.createClient(this)
Джава
// Initialize the SDK Places.initialize(getApplicationContext(), apiKey); // Create a new PlacesClient instance PlacesClient placesClient = Places.createClient(this);
Теперь вы готовы начать использовать Places SDK для Android!
Шаг 5. Настройте устройство Android
Чтобы запустить приложение, использующее Places SDK для Android, необходимо развернуть его на устройстве Android или в эмуляторе Android, основанном на Android 4.0 или более поздней версии и включающем API Google.
- Чтобы использовать устройство Android, следуйте инструкциям в разделе «Запуск приложений на аппаратном устройстве» .
- Чтобы использовать эмулятор Android, вы можете создать виртуальное устройство и установить эмулятор с помощью диспетчера виртуальных устройств Android (AVD) , который входит в состав Android Studio.
Следующие шаги
После настройки проекта вы можете изучить примеры приложений . - В файле