Modules Overview
MapConductor is split into multiple Gradle modules so that you can depend only on what you need. This page summarizes each android-xxx module in v1.1.3.
Core and BOM
Section titled “Core and BOM”mapconductor-bom
Section titled “mapconductor-bom”Bill of Materials for all MapConductor artifacts.
- Aligns versions across all modules
- Recommended for all projects
implementation(platform("com.mapconductor:mapconductor-bom:1.1.3"))android-sdk-core
Section titled “android-sdk-core”Core runtime and shared abstractions:
- Geometry types:
GeoPointInterface,GeoRectBounds - Camera types:
MapCameraPositionInterface,VisibleRegion - Map abstractions:
MapViewStateInterface,MapViewControllerInterface,MapViewBase - Plugin / capability registry:
MapServiceRegistry(viaLocalMapServiceRegistry) - Overlay primitives:
MarkerState,PolylineState,PolygonState,CircleState,GroundImageState
All other modules build on top of android-sdk-core.
Map Provider Integrations
Section titled “Map Provider Integrations”Provider-specific modules implement the unified APIs for each SDK:
android-for-googlemaps
Section titled “android-for-googlemaps”GoogleMapViewcomposableGoogleMapViewState- Google Maps–specific overlay controllers
android-for-mapbox
Section titled “android-for-mapbox”MapboxMapViewcomposableMapboxViewState
android-for-here
Section titled “android-for-here”HereMapViewcomposableHereViewState
android-for-arcgis
Section titled “android-for-arcgis”ArcGISMapViewcomposableArcGISMapViewState
android-for-maplibre
Section titled “android-for-maplibre”MapLibreMapViewcomposableMapLibreViewState
Each provider module:
- Implements
MapViewStateInterfaceand controller bindings - Maps provider-specific camera + visible region into
MapCameraPositionInterface - Exposes overlay controllers (marker, polyline, polygon, circle, ground image where supported)
Experimental / Utility Modules
Section titled “Experimental / Utility Modules”android-icons
Section titled “android-icons”Composable marker icons implemented in pure Compose:
CircleIcon,FlagIcon- Info bubble styles (round, tail, etc.)
Useful when you want consistent marker visuals across providers without relying on provider-specific drawables.
android-heatmap
Section titled “android-heatmap”Map-implementation-agnostic heatmap overlay:
HeatmapOverlaycomposableHeatmapPointsfor batch point updatesHeatmapOverlayStatefor dynamic property changes- Custom
HeatmapGradientsupport
Works with any map provider via a tile-based raster layer. See Heatmap.
android-marker-clustering
Section titled “android-marker-clustering”Automatic marker clustering across all map providers:
MarkerClusterGroupcomposableMarkerClusterGroupStatefor behavior configuration- Custom
clusterIconProvidersupport - Zoom/pan animations
See Marker Clustering.
Example Applications
Section titled “Example Applications”example-app
Section titled “example-app”Showcase application demonstrating:
- Basic map usage and provider switching
- Camera handling and visible region (
VisibleRegionPage,ZoomCalibrationPage) - Polylines, polygons, circles, and ground images
- Info bubbles and custom marker icons
simple-map-app
Section titled “simple-map-app”Minimal example for quick integration tests and debugging.
How to Choose Modules
Section titled “How to Choose Modules”Typical configurations:
// Minimal: Google Maps onlyimplementation(platform("com.mapconductor:mapconductor-bom:1.1.3"))implementation("com.mapconductor:core")implementation("com.mapconductor:for-googlemaps")// Multi-provider with icons and strategiesimplementation(platform("com.mapconductor:mapconductor-bom:1.1.3"))implementation("com.mapconductor:core")implementation("com.mapconductor:for-googlemaps")implementation("com.mapconductor:for-mapbox")implementation("com.mapconductor:icons")implementation("com.mapconductor:marker-strategy")Use this page as a high-level map; detailed API information for each area (core, components, states, experimental) can be migrated from the existing mdBook sections (docs/src/core, docs/src/components, etc.).