如需将应用配置为使用 Places SDK for Android,请按以下步骤操作。所有使用 Places SDK for Android 的应用都需要这些权限。
第 1 步:设置 Android Studio
本文档介绍的是使用 Android Studio Hedgehog 和 Android Gradle 插件 8.2 版的开发环境。
第 2 步:设置 SDK
您可以通过 Google 的 Maven 制品库获取 Places SDK for Android 库。要将 SDK 添加到您的应用中,请执行以下操作:
- 在顶级
settings.gradle.kts文件的pluginManagement代码块下,添加 Gradle 插件门户、Google 的 Maven 制品库和 Maven 中央存储库。pluginManagement代码块必须位于脚本中的任何其他语句之前。pluginManagement { repositories { gradlePluginPortal() google() mavenCentral() } }
- 在顶级
settings.gradle.kts文件的dependencyResolutionManagement代码块下,添加 Google 的 Maven 代码库和 Maven 中央代码库:dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() } }
-
在模块级
build.gradle.kts文件的dependencies部分中,添加对 Places SDK for Android 的依赖项: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:5.0.0") }
- 在模块级
build.gradle.kts文件中,将compileSdk和minSdk设置为以下值:Groovy
android { compileSdk 34 defaultConfig { minSdk 23 // ... } }
Kotlin
android { compileSdk = 34 defaultConfig { minSdk = 23 // ... } }
- 在模块级
build.gradle文件的buildFeatures部分中,添加BuildConfig类;您可以使用该类访问此过程中稍后定义的元数据值:Groovy
android { // ... buildFeatures { buildConfig true // ... } }
Kotlin
android { // ... buildFeatures { buildConfig = true // ... } }
第 3 步:将您的 API 密钥添加到项目中
本部分介绍了如何存储 API 密钥,以便您的应用可以安全引用该密钥。您不应将 API 密钥签入版本控制系统,建议将其存储在项目根目录下的 secrets.properties 文件中。如需详细了解 secrets.properties 文件,请参阅 Gradle 属性文件。
为了简化此任务,建议您使用 Android 版 Secret Gradle 插件。
如需安装 Android 版 Secrets Gradle 插件并存储您的 API 密钥,请执行以下操作:
-
在 Android Studio 中,打开根级
build.gradle文件,并将以下代码添加到buildscript下的dependencies元素中。Groovy
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") } }
-
打开应用级
build.gradle文件,并将以下代码添加到plugins元素中。Groovy
plugins { id 'com.android.application' // ... id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin' }
Kotlin
plugins { id("com.android.application") // ... id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin") }
- 如果您使用 Android Studio,请将项目与 Gradle 同步。
-
在项目级目录中打开
local.properties,然后添加以下代码。将YOUR_API_KEY替换为您的 API 密钥。PLACES_API_KEY=YOUR_API_KEY
第 4 步:初始化 Places API 客户端
如需在 activity 或 fragment 中初始化 Places SDK for Android,请在调用 Places.initializeWithNewPlacesApiEnabled() 时传递 API 密钥:
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);
现在,您已准备好开始使用 Places SDK for Android!
第 5 步:设置 Android 设备
如要运行使用 Places SDK for Android 的应用,您必须将其部署到搭载 Android 5.0 或更高版本且包含 Google API 的 Android 设备或 Android 模拟器。
- 如要使用 Android 设备,请按照在硬件设备上运行应用一文中的说明操作。
- 如要使用 Android 模拟器,您可以使用 Android Studio 随附的 Android 虚拟设备 (AVD) 管理器来创建虚拟设备并安装模拟器。