Interactive, thoroughly customizable maps in native Android powered by vector tiles and OpenGL.
locationComponentSettings
from MapboxMap
composable function, MapEffect
with location component API should be used instead. More compose-friendly location component API will be introduced in future releases.TileCacheBudget(com.mapbox.maps.TileCacheBudget)
constructor and introduce TileCacheBudget(TileCacheBudgetInMegabytes)
and TileCacheBudget(TileCacheBudgetInTiles)
constructor instead.layoutParams
from ViewAnnotation
composable function, the internal ComposeView
wrapping the ViewAnnotation.content
will always use WRAP_CONTENT
; In case of tests where the assertion happens before the measure, user can force the content size using ViewAnnotationOptions.width/height
APIs.PromoteId
data class from compose now takes PropertyName
and optional SourceId
instead of itself.SlotsContent
instead of generic Map
to handle the style content for slots. Introduced slotsContent
builder function.LayerPositionedContent
instead of generic Map
to handle the layer positioned style content. Introduced layerPositionedContent
builder function.StyleImportsConfig
instead of generic Map
to handle the style import configurations. Introduced styleImportsConfig
builder function.MapboxStandardStyle
to a different package and introduce LightPreset
with available presets as constants.MapViewportState
properties cameraState
, mapViewportStatusChangedReason
and mapViewportStatus
are null when the state is not attached to a map.MapViewportState
constructor parameter has been renamed to initialCameraState
.AtmosphereState
parameter to GenericStyle
composable function.Projection
and AtmosphereState
API on MapStyle
and MapboxStandardStyle
.StyleImage
to construct following image layer properties: IconImage
, FillPattern
, LinePattern
, BearingImage
, ShadowImage
, TopImage
.ModelId
constructor to add model id and uri.TerrainState
parameter to GenericStyle
, MapStyle
and MapboxStandardStyle
composable functions.addStyleImportFromJSON
, addStyleImportFromURI
, updateStyleImportWithJSON
, updateStyleImportWithURI
, moveStyleImport
APIs to MapboxMap
and Style
.MapboxMap.subscribeMapLoadingError(mapLoadingErrorCallback)
.SlotLayer
in Style DSL.raster-elevation
for tiled raster sources.line-gradient
properties.line-trim-offset
with line-pattern
.SymbolLayer.iconColorSaturation
range from [0, 1] to [-1, 1] and change default value to 0.Style.styleSlots
allowing to get the ordered list of slots.MapboxMap.cameraForCoordinateBounds
, MapboxMap.cameraForGeometry
and some synchronous overloaded MapboxMap.cameraForCoordinates
in favour of single synchronous, asynchronous and suspend MapboxMap.cameraForCoordinates
. Synchronous MapboxMap.cameraForCoordinates
returns empty camera (could be checked with CameraOptions.isEmpty
) if the map's size is not yet calculated.MapView.setSnapshotLegacyMode
function to help avoiding MapView.snapshot
native crash on some Samsung devices running Android 14.RasterParticleLayer
in Style DSL and Compose.mapView.location.slot
API to assign a slot for the location indicator.rememberGeoJsonSourceState
, where the Value
and GeoJsonData
can not be serialised.ComposeMapInitOptions
and GesturesSettings
so that we don't reconstruct these classes when MapboxMap
recomposes.ViewAnnotation.onUpdatedListener
and skip events from other view annotations.Compass
, so that user set clickable
can be processed.java.io.NotSerializableException: com.mapbox.bindgen.Value
for SourceState.MapViewportState
is no yet attached to the map, to avoid losing events.Snapshotter.cameraForCoordinates
arguments padding
, bearing
and pitch
to be nullable.LogoView.logoEnabled
not being in sync with MapView.logo.enabled
state.circle-sort-key
.MapViewportState
properties cameraState
, mapViewportStatusChangedReason
and mapViewportStatus
are null when the state is not attached to a map.MapViewportState
constructor parameter has been renamed to initialCameraState
.MapViewportState
is no yet attached to the map, to avoid losing events.LogoView.logoEnabled
not being in sync with MapView.logo.enabled
state.StyleImage
to construct following image layer properties: IconImage
, FillPattern
, LinePattern
, BearingImage
, ShadowImage
, TopImage
.ModelId
constructor to add model id and uri.TerrainState
parameter to GenericStyle
, MapStyle
and MapboxStandardStyle
composable functions.RasterParticleLayer
in Style DSL and Compose.mapView.location.slot
API to assign a slot for the location indicator.MapView.setSnapshotLegacyMode
function to help avoiding MapView.snapshot
native crash on some Samsung devices running Android 14.java.io.NotSerializableException: com.mapbox.bindgen.Value
for SourceState.locationComponentSettings
from MapboxMap
composable function, MapEffect
with location component API should be used instead. More compose-friendly location component API will be introduced in future releases.TileCacheBudget(com.mapbox.maps.TileCacheBudget)
constructor and introduce TileCacheBudget(TileCacheBudgetInMegabytes)
and TileCacheBudget(TileCacheBudgetInTiles)
constructor instead.layoutParams
from ViewAnnotation
composable function, the internal ComposeView
wrapping the ViewAnnotation.content
will always use WRAP_CONTENT
; In case of tests where the assertion happens before the measure, user can force the content size using ViewAnnotationOptions.width/height
APIs.PromoteId
data class from compose now takes PropertyName
and optional SourceId
instead of itself.SlotsContent
instead of generic Map
to handle the style content for slots. Introduced slotsContent
builder function.LayerPositionedContent
instead of generic Map
to handle the layer positioned style content. Introduced layerPositionedContent
builder function.StyleImportsConfig
instead of generic Map
to handle the style import configurations. Introduced styleImportsConfig
builder function.MapboxStandardStyle
to a different package and introduce LightPreset
with available presets as constants.AtmosphereState
parameter to GenericStyle
composable function.Projection
and AtmosphereState
API on MapStyle
and MapboxStandardStyle
.addStyleImportFromJSON
, addStyleImportFromURI
, updateStyleImportWithJSON
, updateStyleImportWithURI
, moveStyleImport
APIs to MapboxMap
and Style
.MapboxMap.subscribeMapLoadingError(mapLoadingErrorCallback)
.SlotLayer
in Style DSL.raster-elevation
for tiled raster sources.line-gradient
properties.line-trim-offset
with line-pattern
.SymbolLayer.iconColorSaturation
range from [0, 1] to [-1, 1] and change default value to 0.Style.styleSlots
allowing to get the ordered list of slots.MapboxMap.cameraForCoordinateBounds
, MapboxMap.cameraForGeometry
and some synchronous overloaded MapboxMap.cameraForCoordinates
in favour of single synchronous, asynchronous and suspend MapboxMap.cameraForCoordinates
. Synchronous MapboxMap.cameraForCoordinates
returns empty camera (could be checked with CameraOptions.isEmpty
) if the map's size is not yet calculated.rememberGeoJsonSourceState
, where the Value
and GeoJsonData
can not be serialised.ComposeMapInitOptions
and GesturesSettings
so that we don't reconstruct these classes when MapboxMap
recomposes.ViewAnnotation.onUpdatedListener
and skip events from other view annotations.Compass
, so that user set clickable
can be processed.Snapshotter.cameraForCoordinates
arguments padding
, bearing
and pitch
to be nullable.ComposeMapInitOptions
and remove mapInitOptionsFactory
.MapboxMap.compassSettings
, MapboxMap.scaleBarSettings
, MapboxMap.logoSettings
, MapboxMap.attributionSettings
with composable functions in dedicated scopes: MapCompassScope.Compass()
, MapScaleBarScope.ScaleBar()
, MapLogoScope.Logo()
, MapAttributionScope.Attribution()
.GenericStyle
composable function.contentPadding
to map ornament composable functions(e.g. Compass
, Logo
, Attribution
, ScaleBar
).MapStyle
, MapboxStandardStyle
, GenericStyle
composable functions to work with the map style.GenericStyle
composable function.MapInitOptions.mapName
(mapbox_mapName
in XML) property allowing to set the custom name which will be appended to map render related logs.SdkInformationQuery
to expose sdk version information.TileStore
delta updates by default for Maps domain.TileStore.estimateTileRegion
API for estimating Tile Region downloads and storage size.11.3.0-beta.1
where AnnotationGroup items updates were skipped.ViewAnnotation
not cleared when it leaves composition.IndexOutOfBoundsException
because of RootNode
of MapboxMap
node tree being shared across multiple maps.ViewAnnotationOptions.Builder
when calling ViewAnnotationOptions.Builder.annotationAnchor
extension function.MapboxMap.camera*()
methods resulted in the returned zoom value being NaN.ContextMode.SHARED
is used (e.g. in AndroidAuto extension).ContextMode.SHARED
is used (e.g. in AndroidAuto extension).queryRenderedFeatures
with 3d models in mercator projection.LocationServiceObserver.onAvailabilityChanged
callback trigger.