Configuración de ArcGIS Maps
Esta sección describe los pasos para configurar el SDK de ArcGIS Maps junto con MapConductor.
Requisitos previos
Section titled “Requisitos previos”- Entorno de desarrollo Android
- Cuenta de desarrollador de ArcGIS
- Clave de API de ArcGIS
Pasos de configuración
Section titled “Pasos de configuración”1. Configuración en ArcGIS Developer Dashboard
Section titled “1. Configuración en ArcGIS Developer Dashboard”- Crea una cuenta de desarrollador de ArcGIS
- Accede al ArcGIS Developer Dashboard
- Crea una nueva aplicación o selecciona una existente
- Genera una clave de API con los ámbitos adecuados
- Guarda la clave de API para usarla en tu aplicación
2. Configuración de Gradle
Section titled “2. Configuración de Gradle”Asegúrate de que el repositorio Maven de Esri esté configurado (este repositorio ya lo incluye en settings.gradle.kts):
dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral()
// Esri public repository for ArcGIS Maps SDK maven { url = uri("https://esri.jfrog.io/artifactory/arcgis") } }}dependencyResolutionManagement { repositoriesMode = RepositoriesMode.FAIL_ON_PROJECT_REPOS repositories { google() mavenCentral()
// Esri public repository for ArcGIS Maps SDK maven { url "https://esri.jfrog.io/artifactory/arcgis" } }}Añade el Secrets Gradle Plugin en el build.gradle.kts o build.gradle de la raíz del proyecto:
// (root)/build.gradle.ktsplugins { id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin") version "2.0.1" apply false}// (root)/build.gradleplugins { id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin' version '2.0.1' apply false}Después, añade las dependencias y aplica el plugin en el build.gradle.kts o build.gradle del módulo de la app:
plugins { // ... otros plugins id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin")}
dependencies { // ArcGIS Maps SDK implementation(platform("com.esri:arcgis-maps-kotlin-toolkit-bom:200.7.0")) implementation("com.esri:arcgis-maps-kotlin:200.7.0") implementation("com.esri:arcgis-maps-kotlin-toolkit-geoview-compose") implementation("com.esri:arcgis-maps-kotlin-toolkit-authentication")
// BOM de MapConductor para la gestión de versiones (v1.1.3) implementation(platform("com.mapconductor:mapconductor-bom:1.1.3"))
// Módulos de MapConductor (versiones gestionadas por el BOM) implementation("com.mapconductor:core") implementation("com.mapconductor:for-arcgis")}plugins { // ... otros plugins id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin'}
dependencies { // ArcGIS Maps SDK implementation platform("com.esri:arcgis-maps-kotlin-toolkit-bom:200.7.0") implementation "com.esri:arcgis-maps-kotlin:200.7.0" implementation "com.esri:arcgis-maps-kotlin-toolkit-geoview-compose" implementation "com.esri:arcgis-maps-kotlin-toolkit-authentication"
// BOM de MapConductor para la gestión de versiones (v1.1.3) implementation platform("com.mapconductor:mapconductor-bom:1.1.3")
// Módulos de MapConductor (versiones gestionadas por el BOM) implementation "com.mapconductor:core" implementation "com.mapconductor:for-arcgis"}El Secrets Gradle Plugin lee automáticamente el archivo secrets.properties y puede inyectar sus valores en AndroidManifest.xml en tiempo de compilación.
3. Configuración de AndroidManifest
Section titled “3. Configuración de AndroidManifest”Añade el marcador de posición de la clave de API de ArcGIS en tu AndroidManifest.xml:
<application> <!-- ArcGIS API Key --> <meta-data android:name="ARCGIS_API_KEY" android:value="${ARCGIS_API_KEY}" />
<!-- Añade permisos de internet y ubicación --> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /></application>4. Configuración de la clave de API
Section titled “4. Configuración de la clave de API”Añade la clave de API real en tu archivo secrets.properties. El Secrets Gradle Plugin reemplaza automáticamente ${ARCGIS_API_KEY} en AndroidManifest.xml por el valor real.
ARCGIS_API_KEY=your_actual_arcgis_api_key_here5. Configuración de licencia
Section titled “5. Configuración de licencia”El SDK de ArcGIS requiere una configuración de licencia adecuada. Configura la licencia en tu aplicación:
// In your Application class or MainActivity// ArcGISEnvironment.setLicense("your_license_key_here") // Optional for basic useVerificación
Section titled “Verificación”Para verificar tu configuración de ArcGIS:
- Compila y ejecuta la app
- Comprueba que el mapa de ArcGIS se muestre correctamente
- Prueba las funcionalidades GIS específicas (si las usas)
- Verifica que la autenticación funcione correctamente
@Composablefun TestArcGIS() { val state = rememberArcGISMapViewState( cameraPosition = MapCameraPosition( position = GeoPoint.fromLatLong(0.0, 0.0), zoom = 5.0, ), )
ArcGISMapView( modifier = modifier, state = state, ) { // Si esta pantalla se muestra correctamente, tu configuración es válida }}
Solución de problemas
Section titled “Solución de problemas”Problemas comunes
Section titled “Problemas comunes”El mapa no se carga
- Verifica que la clave de API en
secrets.propertiessea correcta - Comprueba que la clave de API tenga los ámbitos adecuados en el panel de ArcGIS
Errores de licencia
- Asegúrate de que
ArcGISEnvironment.setApiKey()se llame antes de usar el mapa - Para apps de producción, configura la licencia según la documentación de Esri
Errores de compilación
- Verifica que las coordenadas del SDK de ArcGIS coincidan con la configuración de tu proyecto
- Asegúrate de usar el BOM para la gestión de versiones
- Comprueba que las dependencias del toolkit de Compose estén incluidas
Próximos pasos
Section titled “Próximos pasos”Una vez que el SDK de ArcGIS Maps esté configurado correctamente, puedes usar el componente ArcGISMapView de MapConductor con la API unificada.