En esta página, se describe lo que debes hacer para configurar el SDK de Maps en 3D para Android y comenzar a compilar con él. El proceso de configuración implica configurar un proyecto de Google Cloud y una API para usarlos con el SDK y, luego, configurar un proyecto de Android Studio. Completa estos pasos antes de agregar tu primer mapa en 3D a tu app.
Requisitos previos
Para usar el SDK de Maps en 3D para Android, tu proyecto y los dispositivos de destino deben cumplir con los siguientes requisitos:
- Nivel de API mínimo: nivel de API de Android 24 (Android 7.0) o posterior Tu app debe tener un
minSdkde24o superior. - Servicios de Google Play: El SDK de Maps 3D para Android depende de los Servicios de Google Play. Los dispositivos de destino (y los emuladores con las APIs de Google) deben tener instalados los Servicios de Google Play.
Configura un proyecto de Google Cloud y una clave de API
Antes de comenzar a compilar con el SDK de Maps 3D para Android, debes configurar un proyecto de Google Cloud y una clave de API para usar con el SDK de Maps 3D para Android. Para ello, completa los siguientes pasos:
Paso 1: Configura tu proyecto
Console
-
En la consola de Google Cloud, en la página del selector de proyectos, haz clic en Crear proyecto para comenzar a crear un proyecto nuevo de Cloud.
-
Asegúrate de que la facturación esté habilitada para tu proyecto de Cloud. Confirma que la facturación esté habilitada para tu proyecto.
Google Cloud ofrece una prueba con un cargo de USD 0.00. La prueba vence al final de un plazo de 90 días, o bien después de que la cuenta acumule USD 300 en cargos, lo que ocurra primero. Puedes cancelar la prueba en cualquier momento. Para obtener más información, consulta Créditos de la cuenta de facturación y Facturación.
SDK de Cloud
gcloud projects create "PROJECT"
Obtén más información sobre el SDK de Google Cloud, la instalación del SDK de Cloud y los siguientes comandos:
Paso 2: Habilita las APIs o los SDKs
Para usar Google Maps Platform, debes habilitar las APIs o los SDKs que planeas usar con tu proyecto.
Ten en cuenta que algunas integraciones requieren que habilites varias API o SDK. Si no sabes qué API o SDK habilitar, prueba usar el Explorador de capacidades o consulta la documentación de la API o el SDK que quieres usar.
Para habilitar una o más APIs o SDKs, sigue estos pasos:
Console
-
En la página Biblioteca de la API de Google Maps en la consola de Cloud, consulta las APIs y los SDKs de Google Maps Platform que puedes habilitar:
Ve a la página Biblioteca de la API de Google Maps
- Haz clic en la API o el SDK que deseas habilitar.
- Si el botón dice HABILITAR, haz clic en él para habilitar la API o el SDK.
- Si el botón dice ADMINISTRAR, la API o el SDK ya están habilitados y no necesitas hacer nada más.
- Si haces clic en cualquiera de los botones, se mostrará el panel de la API o el SDK. (Haz clic en el botón INHABILITAR para quitar la API o el SDK de este proyecto).
SDK de Cloud
El siguiente comando habilita todas las APIs de Maps, Routes y Places:
gcloud services enable \ --project "PROJECT" \ "addressvalidation.googleapis.com" \ "areainsights.googleapis.com" \ "tile.googleapis.com" \ "aerialview.googleapis.com" \ "elevation-backend.googleapis.com" \ "routes.googleapis.com" \ "geocoding-backend.googleapis.com" \ "geolocation.googleapis.com" \ "maps-android-backend.googleapis.com" \ "maps-backend.googleapis.com" \ "maps-embed-backend.googleapis.com" \ "maps-ios-backend.googleapis.com" \ "mapsplatformdatasets.googleapis.com" \ "places-backend.googleapis.com" \ "roads.googleapis.com" \ "routeoptimization.googleapis.com" \ "static-maps-backend.googleapis.com" \ "street-view-image-backend.googleapis.com" \ "timezone-backend.googleapis.com"
Obtén más información sobre el SDK de Google Cloud, la instalación del SDK de Cloud y los siguientes comandos:
Usa este comando para habilitar las APIs de entorno:
gcloud services enable \ --project "PROJECT" \ "airquality.googleapis.com" \ "solar.googleapis.com" \ "pollen.googleapis.com" \ "weather.googleapis.com"
Paso 3: Obtén una clave de API
En este paso, solo se realiza el proceso de creación de la clave de API. Si usas la clave de API en producción, te recomendamos que la restrinjas. Puedes encontrar más información en la página Usar claves de API específica del producto.
La clave de API es un identificador único que se utiliza para autenticar solicitudes asociadas a tu proyecto con fines de uso y facturación. Debes tener, al menos, una clave de API asociada a tu proyecto. Para crear una clave nueva o agregar una API o un SDK a una clave existente, sigue estas instrucciones.
Console
-
Ve a la página Google Maps Platform > Claves y credenciales.
- Si se solicita, selecciona tu proyecto.
-
Realiza una de las siguientes acciones:
-
Crea una clave nueva:
- Haz clic en Crear credenciales > Clave de API.
- En el panel Crear clave de API, abre la lista Elige las restricciones de API.
- Borra las APIs que no necesite esta clave y asegúrate de que las APIs que planeas usar permanezcan seleccionadas.
- Haz clic en Crear. En el panel, se mostrará tu nueva clave de API.
-
Usar una clave existente:
- Haz clic en el nombre de la clave.
- En la lista Seleccionar las restricciones de API, selecciona las APIs que planeas usar.
- Haz clic en Guardar.
Seleccionar una API aquí no la habilita. Asegúrate de que cada API que selecciones esté habilitada en la Biblioteca de APIs.
-
- Para ver la cadena de clave más adelante, ve a la página Claves y credenciales y haz clic en Mostrar clave para la clave.
Si la consola se ve diferente de estos pasos, consulta Crea una clave de API y Agrega restricciones de API en la documentación de Google Cloud.
SDK de Cloud
Reemplaza PROJECT_ID por el ID del proyecto en los siguientes comandos.
-
Crea una clave nueva: Ejecuta el siguiente comando y reemplaza DISPLAY_NAME por un nombre para la clave. Reemplaza SERVICE_NAME por el nombre del servicio de una API que planeas usar, como
places.googleapis.com. Para permitir más APIs, repite la marca--api-target.gcloud services api-keys create \ --project="PROJECT_ID" \ --display-name="DISPLAY_NAME" \ --api-target=service=SERVICE_NAME
Obtén más información sobre el SDK de Google Cloud, la instalación del SDK de Cloud y los siguientes comandos:
-
Usa una clave existente: Ejecuta el siguiente comando y reemplaza KEY_ID por el ID de la clave. Reemplaza SERVICE_NAME por el nombre del servicio de la API que deseas agregar. La marca
--appendconserva las APIs que la clave ya permite. Sin él, el comando las reemplaza.gcloud services api-keys update KEY_ID \ --project="PROJECT_ID" \ --append \ --api-target=service=SERVICE_NAME
Obtén más información sobre el SDK de Google Cloud, la instalación del SDK de Cloud y los siguientes comandos:
El ID de clave no es la cadena de clave ni el nombre visible. Para encontrarlo, ejecuta
gcloud services api-keys list --project="PROJECT_ID". El ID es la última parte del camponame:projects/PROJECT_NUMBER/locations/global/keys/KEY_ID.
Para ver la cadena de la clave, ejecuta
gcloud services api-keys get-key-string KEY_ID
--project="PROJECT_ID".
Para habilitar el SDK, consulta la página SDK de Maps 3D para Android en la consola de Google Cloud. Para obtener más información sobre cómo completar estos pasos, consulta Cómo comenzar a utilizar Google Maps Platform.
Cómo configurar un proyecto de Android Studio
En esta sección, se explica cómo crear y configurar un proyecto de Android Studio para usarlo con el SDK de Maps en 3D para Android.
Parte 1: Configura tu proyecto y Gradle
Crea un nuevo proyecto de Android Studio con la plantilla Empty Views Activity. En la configuración del proyecto, establece el SDK mínimo en la API 24 o una versión posterior.
Si usas Git para el control de código fuente, modifica el archivo
.gitignoredel proyecto para evitar que el archivo de secretos se confirme en el control de versiones:- En el directorio raíz de tu proyecto, abre el archivo
.gitignore. - Agrega la siguiente línea:
secrets.properties- En el directorio raíz de tu proyecto, abre el archivo
Actualiza el archivo
build.gradle.ktsa nivel del proyecto:- En el directorio raíz de tu proyecto, abre el archivo
build.gradle.kts. - En el bloque
plugins, agrega el complemento Secrets Gradle:
plugins { alias(libs.plugins.android.application) apply false alias(libs.plugins.kotlin.android) apply false alias(libs.plugins.secrets.gradle.plugin) apply false // Add this line }- En el directorio raíz de tu proyecto, abre el archivo
Actualiza el archivo
gradle/libs.versions.toml:- Abre el archivo
gradle/libs.versions.toml, que suele encontrarse en el directoriogradledentro del directorio raíz del proyecto. - En la sección
[versions], agrega las versiones del SDK y del complemento de Secrets para Gradle:
# See https://developers.google.com/android/guides/setup?device=phone-tablet for available releases maps3dSdk = "16.0.1" # See https://github.com/google/secrets-gradle-plugin/releases for available releases secretsGradlePlugin = "2.0.1"- En la sección
[library], agrega la biblioteca del SDK:
play-services-maps3d = { module = "com.google.android.gms:play-services-maps3d", version.ref = "maps3dSdk" }- En la sección
[plugins], agrega el complemento de Secrets para Gradle:
secrets-gradle-plugin = { id = "com.google.android.libraries.mapsplatform.secrets-gradle-plugin", version.ref = "secretsGradlePlugin" }- Abre el archivo
Actualiza el archivo
app/build.gradle.ktsa nivel del módulo:- Abre el archivo
build.gradle.ktsde nivel de módulo, que suele ubicarse en el directorioapp. - En la parte superior del archivo, agrega el complemento de Gradle de Secrets al bloque
plugins:
plugins { alias(libs.plugins.android.application) alias(libs.plugins.kotlin.android) alias(libs.plugins.secrets.gradle.plugin) // Add this line }- En el bloque
dependencies, agrega la dependencia de los Servicios de Google Play para el SDK de Maps en 3D para Android:
dependencies { // ... other dependencies implementation(libs.play.services.maps3d) // Add this line }- Al final del archivo, fuera de los bloques
androidydependencies, agrega la configuración de Secrets:
secrets { // Optionally specify a different filename 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" }- Abre el archivo
Parte 2: Agrega tu clave de API al proyecto
Crea un archivo
secrets.properties:- En el directorio raíz del módulo de la app (por lo general, el directorio
app), crea un archivo nuevo llamadosecrets.properties. - Agrega tu clave de API al archivo:
MAPS3D_API_KEY=YOUR_API_KEY_HERE- En el directorio raíz del módulo de la app (por lo general, el directorio
Crea un archivo
local.defaults.properties: - En el directorio raíz del módulo de la app, crea un archivo nuevo llamadolocal.defaults.properties. - Agrega una clave de API predeterminada o de marcador de posición al archivo. Este archivo se puede verificar en el control de versiones:MAPS3D_API_KEY=DEFAULT_API_KEY_OR_PLACEHOLDER
Parte 3: Actualiza tu archivo AndroidManifest.xml
Abre el archivo
app/src/main/AndroidManifest.xml.Dentro de la etiqueta
<application>, antes de la etiqueta<activity>, agrega el siguiente elemento<meta-data>para declarar tu clave de API:<application ...> <meta-data android:name="com.google.android.geo.maps3d.API_KEY" android:value="${MAPS3D_API_KEY}" /> <activity ...> </activity> </application>Durante el proceso de compilación, el complemento Secrets Gradle reemplazará el marcador de posición
${MAPS3D_API_KEY}por la clave de tu archivosecrets.properties.
Inicialización de la vista programática (opcional)
Si prefieres inicializar tu vista de mapa de manera programática en lugar de hacerlo en diseños XML, usa Map3DInitConfig.
import com.google.android.gms.maps3d.Map3DInitConfig
import com.google.android.gms.maps3d.Map3DView
import com.google.android.gms.maps3d.model.Map3DMode
// Set configuration options using the factory method
val config = Map3DInitConfig.create(
mapMode = Map3DMode.HYBRID,
centerLat = 38.544012,
centerLng = -107.670428
)
val map3DView = Map3DView(context, config)
Próximos pasos
Ahora que tienes un proyecto de Google Cloud, una clave de API y un proyecto de Android Studio configurados para usarlos con el SDK de Maps en 3D para Android, puedes agregar un mapa en 3D a tu app.