Skip to main content
Version: 6.0

Release Notes

Mappedin SDK for Android release notes are posted here and this page will be kept up-to-date as updates are released.

6.2.0-alpha.3 - January 16, 2026

  • Upgraded to Mappedin JS v6.11.0

  • Added - MapData.on method for subscribing to map data events. This enables listening for events such as language changes on the map data object. Use MapData.changeLanguage to change the current language and subscribe to changes using MapDataEvents.LanguageChange

// Change the map language to Spanish
mapView.mapData.changeLanguage("es")

// Listen for language change events
mapView.mapData.on(MapDataEvents.LanguageChange) { payload ->
payload?.let { language ->
Log.d("MapData", "Language changed to ${language.name} (${language.code})")
}
}
  • Added - FloorState.text3d property to access 3D text state for a floor

  • Added - LocationProfile.extra property to access additional profile data

  • Added - enterpriseLocation property to Space and MapObject, providing direct access to enterprise location data when available

  • Added - LocationProfile.logoImage property as a replacement for the deprecated logo property

  • Added - Strongly typed MapData.hydrateMapData options parameter for better type safety when hydrating cached map data

  • Added - Support for caching map data in binary format for improved offline performance

  • Added - Experimental support for Spaces that are open to below in multi-floor view. When enabled, floors will render with cutouts for Spaces like atriums that span multiple levels, creating a more realistic visualization. Enable this feature using MultiFloorViewOptions.spacesOpenToBelowEnabled

  • Added - New MultiFloorViewOptions properties for customizing floor footprints in multi-floor view:

    • footprintColor - Sets the color of the floor footprint
    • footprintOpacity - Controls the opacity of the floor footprint
    • footprintOutline - Configures the outline appearance of the floor footprint
  • Changed - MultiFloorViewOptions.floorGap now supports both a numeric value or an auto setting for automatic gap calculation between floors

  • Fixed - Bridge serialization issue where FloorStack.geoJSON and other complex GeoJSON properties were not being passed correctly over the native bridge. This resolves issues when accessing GeoJSON data from floor stacks and related objects

  • Fixed - Android Studio code assists (autocomplete, quick documentation, and quick fixes) now work correctly with EnterpriseLocation types.

  • Deprecated - LocationProfile.logo has been deprecated in favor of LocationProfile.logoImage

6.2.0-alpha.2 - January 8, 2026

  • Upgraded to Mappedin JS v6.10.0
  • Added - getDirections must also accept an array of NavigationTarget
  • Added - Coordinate.geoJSON
  • Fixed - mapView.updateState is not working on walls or doors
  • Fixed - getDirectionsMultiDestination's to method should use NavigationTarget not Any
  • Removed - Duplicated unused standalone classes of Point, LineString and MultiPolygon that are defined in Geometry

⚠️ Breaking Changes

  • Changed - Clean up remaining generic types
  • Changed - Strongly type .geoJSON properties
  • Changed - Shapes.add should be strongly typed
// ❌ Before
// Create a FeatureCollection containing the Feature of the Area
val shapeFeatureCollection =
JSONObject().apply {
put("type", "FeatureCollection")
put(
"features",
JSONArray().apply {
put(
JSONObject().apply {
put("type", areaGeoJSON.optString("type"))
areaGeoJSON.optJSONObject("properties")?.let {
put("properties", it)
}
areaGeoJSON.optJSONObject("geometry")?.let {
put("geometry", it)
}
},
)
},
)
}

// Draw the shape
mapView.shapes.add(
shapeFeatureCollection,
PaintStyle(color = color, opacity = opacity, altitude = altitude, height = height),
) {}

// ✅ After
// Get the GeoJSON Feature from the area
val feature = area.geoJSON ?: return

// Create a FeatureCollection containing the single Feature
val featureCollection = FeatureCollection(features = listOf(feature))

// Draw the shape using the strongly-typed API
mapView.shapes.add(
featureCollection,
PaintStyle(color = color, opacity = opacity, altitude = altitude, height = height),
) {}

6.2.0-alpha.1 - December 30, 2025

  • Upgraded to Mappedin JS v6.9.1.
  • Added - Show3DMapOptions.preloadFloors option to preload floors.
  • Added -MultiFloorViewOptions.floorGap option to set the gap between floors.
  • Fixed - Show3DMapOptions.initialFloor should accept only a string.

⚠️ Breaking Changes

  • Changed - Strongly type MapView.on parameters and return values
// ❌ Before
mapView.on("click") { payload ->
val clickPayload = payload as? ClickPayload
}

// ❌ Before
mapView.on(Events.CLICK) { payload ->
val clickPayload = payload as? ClickPayload
}

// ✅ After
mapView.on(Events.Click) { clickPayload ->
}

6.1.0-alpha.1 - December 19, 2025

  • Added - LabelAppearance.iconScale property to control the scale of the icon.
  • Fixed - MapData.getById not returning the correct type.

⚠️ Breaking Changes

  • Fixed - Removed duplicate inline implementation of Interpolation and Width.
// ❌ Before
AddPathOptions(
width = AddPathOptions.Width.Fixed(1.0),
)

// ✅ After
AddPathOptions(
width = Width.Value(1.0),
)
  • Fixed - MapView.getState and MapView.updateState should use data classes and not plain objects.
// ❌ Before
mapView.updateState(space, mapOf("interactive" to true)) { }

// ✅ After
mapView.updateState(space, GeometryUpdateState(interactive = true)) { }

6.0.0-alpha.1 - December 4, 2025

  • Upgraded to Mappedin JS v6.7.0.

6.0.0-alpha.0 - December 3, 2025

  • Initial release of Mappedin SDK for Android v6.