Чтобы настроить приложение для использования Places SDK для Android, выполните следующие действия. Они необходимы для всех приложений, использующих Places SDK для Android.
Шаг 1. Настройте Android Studio
В этом документе описывается среда разработки с использованием Android Studio Hedgehog и плагина Android Gradle версии 8.2.
Шаг 2. Настройте SDK
Библиотека Places SDK для Android доступна в репозитории Google Maven . Чтобы добавить SDK в ваше приложение, выполните следующие действия:
- В файле
settings.gradle.ktsверхнего уровня включите портал плагинов Gradle , репозиторий Google Maven и центральный репозиторий Maven в блокеpluginManagement. БлокpluginManagementдолжен появляться перед любыми другими операторами в скрипте.pluginManagement { repositories { gradlePluginPortal() google() mavenCentral() } }
- В файле
settings.gradle.ktsверхнего уровня включите репозиторий Google Maven и центральный репозиторий Maven в блокdependencyResolutionManagement:dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() } }
В разделе
dependenciesфайлаbuild.gradle.ktsна уровне модуля добавьте зависимость к Places SDK для Android:классный
dependencies { implementation(platform("org.jetbrains.kotlin:kotlin-bom:$kotlin_version")) implementation("com.google.android.libraries.places:places:3.5.0") }
Котлин
dependencies { // Places and Maps SDKs implementation("com.google.android.libraries.places:places:4.3.1") }
- В файле
build.gradle.ktsна уровне модуля установитеcompileSdkиminSdkследующие значения:классный
android { compileSdk 34 defaultConfig { minSdk 23 // ... } }
Котлин
android { compileSdk = 34 defaultConfig { minSdk = 23 // ... } }
- В разделе
buildFeaturesфайлаbuild.gradleуровня модуля добавьте классBuildConfig, который вы используете для доступа к значениям метаданных, определенным позже в этой процедуре:классный
android { // ... buildFeatures { buildConfig true // ... } }
Котлин
android { // ... buildFeatures { buildConfig = true // ... } }
Шаг 3. Добавьте ключ API в проект.
В этом разделе описывается, как хранить ключ API, чтобы ваше приложение могло безопасно ссылаться на него. Вам не следует проверять свой ключ API в системе контроля версий, поэтому мы рекомендуем хранить его в файле secrets.properties , который находится в корневом каталоге вашего проекта. Дополнительные сведения о файле secrets.properties см. в разделе Файлы свойств Gradle .
Чтобы упростить эту задачу, мы рекомендуем вам использовать плагин Secrets Gradle для Android .
Чтобы установить плагин Secrets Gradle для Android в свой проект Google Maps:
- В Android Studio откройте файл
build.gradle.ktsилиbuild.gradleверхнего уровня и добавьте следующий код в элементdependenciesвbuildscript.Котлин
buildscript { dependencies { classpath("com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin:2.0.1") } }
классный
buildscript { dependencies { classpath "com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin:2.0.1" } }
- Откройте файл
build.gradle.ktsилиbuild.gradleуровня модуля и добавьте следующий код в элементplugins.Котлин
plugins { // ... id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin") }
классный
plugins { // ... id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin' }
- В файле
build.gradle.ktsилиbuild.gradleна уровне модуля убедитесь, что дляtargetSdkиcompileSdkустановлено значение 34. - Синхронизируйте свой проект с Gradle .
- Откройте файл
secrets.propertiesв каталоге верхнего уровня, а затем добавьте следующий код. ЗаменитеYOUR_API_KEYсвоим ключом API. Сохраните свой ключ в этом файле, посколькуsecrets.propertiesне подлежит проверке в системе контроля версий.PLACES_API_KEY=YOUR_API_KEY
Создайте файл
local.defaults.propertiesв каталоге верхнего уровня, в той же папке, что и файлsecrets.properties, а затем добавьте следующий код.PLACES_API_KEY=DEFAULT_API_KEY
Целью этого файла является предоставление резервного местоположения для ключа API, если файл
secrets.propertiesне найден, чтобы сборка не завершалась сбоем. Это может произойти, если вы клонируете приложение из системы контроля версий, в которой отсутствуетsecrets.properties, и вы еще не создали файлsecrets.propertiesлокально, чтобы предоставить свой ключ API.В Android Studio откройте файл
build.gradle.ktsилиbuild.gradleуровня модуля и отредактируйте свойствоsecrets. Если свойствоsecretsне существует, добавьте его.Отредактируйте свойства плагина, установив для
propertiesFileNamesecrets.properties, установите дляdefaultPropertiesFileNameзначениеlocal.defaults.propertiesи установите любые другие свойства.Котлин
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" }
классный
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" }
Шаг 4. Инициализируйте клиент Places API
Инициализируйте Places SDK для Android в действии или фрагменте. Сначала вам необходимо решить, какую версию SDK использовать: Places SDK для Android или Places SDK для Android (новая). Дополнительную информацию о версиях продукта см. в разделе Выбор версии SDK .
В следующем примере показано, как инициализировать SDK для обеих версий.Places SDK для Android (новинка)
Передайте ключ API при вызове Places.initializeWithNewPlacesApiEnabled() :
Котлин
// 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)
Ява
// 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);
SDK Адресов для Android
Передайте ключ API при вызове Places.initialize() :
Котлин
// 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)
Ява
// 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);
Теперь вы готовы начать использовать Places SDK для Android!
Шаг 5. Настройте устройство Android
Чтобы запустить приложение, использующее Places SDK для Android, необходимо развернуть его на устройстве Android или в эмуляторе Android, основанном на Android 5.0 или более поздней версии и включающем API Google.
- Чтобы использовать устройство Android, следуйте инструкциям в разделе «Запуск приложений на аппаратном устройстве» .
- Чтобы использовать эмулятор Android, вы можете создать виртуальное устройство и установить эмулятор с помощью диспетчера виртуальных устройств Android (AVD), который входит в состав Android Studio.