android-v10.4.0
10.4.0 March 23, 2022
Changes since Mapbox Maps SDK for Android 10.3.0
Features ✨ and improvements 🏁
- Refactor scheduling logic for render thread improving rendering performance. (#1068)
- Add LocationCompassEngine and accuracy radius support for location component plugin. (#1016) (#1131)
Inorder to avoid breaking api changes, interface location2 is introduced for updatingpuckBearingSource,puckBearingEnabledandshowAccuracyRingproperties.
// Change the puck bearing source.
mapView.location2.puckBearingSource = PuckBearingSource.HEADING
mapView.location2.puckBearingSource = PuckBearingSource.COURSE
// Change the visibility of accuracy ring.
mapView.location2.showAccuracyRing = true
mapView.location2.showAccuracyRing = false
// Change the puck bearing enabled.
mapView.location2.puckBearingEnabled = true
mapView.location2.puckBearingEnabled = false
- Add support for custom widgets rendered on top of the map. (#1036)
- Expose DefaultLocationProvider as public class. (#1168)
- Add new methods to View Annotation API:
ViewAnnotationManager.removeAllViewAnnotations()andViewAnnotationManager.addOnViewAnnotationUpdatedListener(listener: OnViewAnnotationUpdatedListener)/ViewAnnotationManager.removeOnViewAnnotationUpdatedListener(listener: OnViewAnnotationUpdatedListener). (#1165) - Add optional
TransitionOptionsparameter toMapboxMap.loadStyleUri,MapboxMap.loadStyleJson,MapboxMap.loadStyleto apply transition to style being loaded. (#1174) - Rendering performance improvements. (1215)
- Add support for 3D terrain tilepacks. (1215)
- Add
Style#hasStyleImagemethod that checks whether an image is in the style. (1215)
Bug fixes 🐞
- Fix skipping / crashing user events scheduled on a render thread with
MapView#queueEvent. (#1068) - Fix location puck not being shown if map is created without initial style (e.g. MapInitOptions.styleUri == null) and then loaded asynchronously. (#1114)
- Fix crash within location plugin that happens when style is reloaded simultaneously with location plugin updates. (#1112)
- Fix memory leak in location component. (#1093, #1172)
- Fix bearing of the puck reseted on settings change. (#1144)
- Fix an issue when user subscribe sdk listeners multiple times, by changing CopyOnWriteArrayList to CopyOnWriteArraySet in the sdk to hold listeners. (1183)
- Fix an issue when label list is used within the match expression DSL. (1204)
- Fix too small bounds returned by
Map#latLngBoundsZoomForCamerawith tilted view andMap#latLngBoundsZoomForCameraUnwrappedwhen viewing >360° longitude. (1215) - Fix screen coordinate queries when using zero pitch and high zoom values. (1215)
- Fix crash for the case when a map event is handled by an Observer of a destructed Map. (1215)
- Fix shimmering artifact when pitched raster tiles with compressed textures are rendered. (1215)
- Avoid possible crash at program exit caused by dummy tracer accessed after the destruction. (1215)
- Clearing diffuse shaded flag for 3D puck when set by batched 3D rendering. (1215)