Skip to content

Módulos

MapConductor está dividido en varios módulos de Gradle para que solo tengas que depender de lo que realmente necesitas. En esta página se resume cada módulo mapconductor-xxx en la versión v1.1.7.

Núcleo y BOM

mapconductor-bom

Bill of Materials para todos los artefactos de MapConductor.

  • Alinea las versiones entre todos los módulos
  • Recomendado para todos los proyectos
implementation(platform("com.mapconductor:mapconductor-bom:1.1.7"))

android-sdk-core

Runtime central y abstracciones compartidas:

  • Tipos de geometría: GeoPointInterface, GeoRectBounds
  • Tipos de cámara: MapCameraPositionInterface, VisibleRegion
  • Abstracciones de mapa: MapViewStateInterface, MapViewControllerInterface, MapViewBase
  • Registro de plugins/capabilities: MapServiceRegistry (vía LocalMapServiceRegistry)
  • Primitivas de overlay: MarkerState, PolylineState, PolygonState, CircleState, GroundImageState

Todos los demás módulos se construyen sobre android-sdk-core.

Integraciones de proveedores de mapas

Los módulos específicos de cada SDK implementan la API unificada:

android-for-googlemaps

  • Composable GoogleMapView
  • GoogleMapViewState
  • Controladores de overlays específicos de Google Maps

android-for-mapbox

  • Composable MapboxMapView
  • MapboxViewState

android-for-here

  • Composable HereMapView
  • HereViewState

android-for-arcgis

  • Composable ArcGISMapView
  • ArcGISMapViewState

android-for-maplibre

  • Composable MapLibreMapView
  • MapLibreViewState

Cada módulo de proveedor:

  • Implementa MapViewStateInterface y los bindings del controlador
  • Mapea la cámara y región visible específicas del proveedor a MapCameraPositionInterface
  • Expone controladores de overlays (marcador, polilínea, polígono, círculo y ground image cuando se soporta)

Módulos experimentales / utilitarios

android-icons

Iconos de marcador implementados en Compose puro:

  • CircleIcon, FlagIcon
  • Estilos de burbuja de información (redonda, con cola, etc.)

Útiles cuando necesitas una apariencia de marcadores consistente entre proveedores sin depender de drawables específicos del SDK.

android-heatmap

Overlay de mapa de calor independiente de la implementación:

  • Composable HeatmapOverlay
  • HeatmapPoints para actualizaciones en lote
  • HeatmapOverlayState para cambios dinámicos de propiedades
  • Soporte de HeatmapGradient personalizado

Funciona con cualquier proveedor de mapas mediante una capa raster basada en tiles. Ver Heatmap.

android-geojson-layer

Capa GeoJSON independiente de la implementación del mapa:

  • Composable GeoJSONLayer
  • GeoJSONFeature para datos estáticos
  • GeoJSONFeatureState para integración con Compose state
  • GeoJSONParser para parseo en lote y por streaming

Funciona con cualquier proveedor de mapas mediante una capa raster basada en tiles. Ver GeoJSON Layer.

android-marker-clustering

Agrupación automática de marcadores para todos los proveedores:

  • Composable MarkerClusterGroup
  • MarkerClusterGroupState para la configuración del comportamiento
  • Soporte de clusterIconProvider personalizado
  • Animaciones de zoom/paneo

Ver Marker Clustering.

Aplicaciones de ejemplo

example-app

Aplicación de demostración que muestra:

  • Uso básico del mapa y cambio de proveedor
  • Manejo de cámara y región visible (VisibleRegionPage, ZoomCalibrationPage)
  • Polilíneas, polígonos, círculos y ground images
  • Burbujas de información e iconos de marcador personalizados

simple-map-app

Ejemplo mínimo para pruebas rápidas de integración y depuración.

Cómo elegir módulos

Configuraciones típicas:

// Mínimo: solo Google Maps
implementation(platform("com.mapconductor:mapconductor-bom:1.1.7"))
implementation("com.mapconductor:core")
implementation("com.mapconductor:for-googlemaps")
// Varios proveedores con iconos y estrategias
implementation(platform("com.mapconductor:mapconductor-bom:1.1.7"))
implementation("com.mapconductor:core")
implementation("com.mapconductor:for-googlemaps")
implementation("com.mapconductor:for-mapbox")
implementation("com.mapconductor:icons")
implementation("com.mapconductor:marker-strategy")

Utiliza esta página como mapa de alto nivel. La información detallada de la API para cada área (núcleo, componentes, estados, módulos experimentales) puede migrarse desde las secciones existentes de mdBook (docs/src/core, docs/src/components, etc.).