Skip to content
This repository has been archived by the owner on Jun 21, 2023. It is now read-only.

Releases: mapbox/mapbox-gl-native-android

android-v8.6.4

17 Jul 14:01
390db7a
Compare
Choose a tag to compare

8.6.4 - July 17, 2020

Changes since Mapbox Maps SDK for Android v8.6.3:

Bug fixes

  • Fixed a memory leak that would occur when a source was removed. (#412)

Other changes

  • Bumped Java SDK dependency to 4.9.1 (#478)

android-v9.3.0

15 Jul 17:04
d379b15
Compare
Choose a tag to compare

Starting this release, the Mapbox Maps SDK for Android will use a pre-built GL Native binary licensed under the Mapbox Terms of Service. The license of the Maps SDK for Android remains BSD-2. For more information on using this and future releases, see. For more details on licensing, see LICENSE.md.

Release v9.3.0 updates the Mapbox Maps SDK for Android to use a pre-built GL Native binary rather than building from source as a submodule dependency. GL Native is changing some of its development workflows to build some Mapbox platform-specific features internally, similar to Chrome/Chromium development. Please refer to the README.md and/or DEVELOPING.md for guidance.

License update for Mapbox builds of GL Native.

Starting today, new binary releases of GL Native are licensed under the Mapbox Terms of Service. The Mapbox Maps SDKs repos will continue to be public and licensed under BSD-2.If you have any questions about how this change may impact your use of the Maps SDK, please don’t hesitate to reach out to Mapbox Support to connect with the Mapbox mobile team.

Improvements and bug fixes

  • Added exception-free GLSurfaceView implementation. (#402)
  • Added exception-free Android map renderer. (#411)
  • Clarified the error message when an HTTP request has been cancelled. (#433)
  • Fixed a memory leak that would occur when a source was removed. (#412)
  • Fixed a bug that would halt the application during a scheduled snapshot when the map renderer was stopped. (#390
  • Avoid changing file source status when the cache path is changed. (#457)
  • Avoid null pointer exception when the underlying hardware is too slow to create the surface. (#471)

User location indicator

  • Double-tapping the map when the camera is tracking the user location indicator now zooms to the LocationComponent's location. (#378)
  • Improved camera rotation to use the shortest path. (#426)
  • Added support for using a background image on GPS mode when LocationComponentActivationOptions#useSpecializedLocationLayer is activated . (#439)
  • Fixed a bug where an in-progress animation of an updating LocationComponent would be interrupted when a style was changed. (#437)
  • Updated documentation to reflect that the FOREGROUND_LAYER constant is usable for relative positioning in both normal and specialized rendering modes. #413
  • Set GPS bearing immediately when changing the indicator to GPS mode. (#470)

Other changes

  • Updated javadoc documentation for removeSource/removeLayer/removeLayerAt. (#422)
  • Updated GeoJSON library to v5.3.0. (#441)
  • Updated Telemetry library to v5.1.0. (#409)

android-v9.3.0-beta.1

10 Jul 16:21
Compare
Choose a tag to compare
android-v9.3.0-beta.1 Pre-release
Pre-release
  • Updated Mapbox GL Native library to v1.8.1. (#464)
  • Not change file source status while changing cache path (#457)

android-v9.3.0-alpha.1

03 Jul 11:12
165dd98
Compare
Choose a tag to compare
Pre-release

Starting this release, the Mapbox Maps SDK for Android will use a pre-built GL Native binary licensed under the Mapbox Terms of Service. The license of the Maps SDK for Android remains BSD-2. For more information on using this and future releases, see README.md. For more details on licensing, see LICENSE.md.

Improvements and bug fixes

  • Added exception-free GLSurfaceView implementation. (#402)
  • Added exception-free Android map renderer. (#411)
  • Clarified the error message when an HTTP request has been cancelled. (#433)
  • Fixed a memory leak that would occur when a source was removed. (#412)
  • Fixed a bug that would halt the application during a scheduled snapshot when the map renderer was stopped. (#390

User location indicator

  • Double-tapping the map when the camera is tracking the user location indicator now zooms to the LocationComponent's location. (#378)
  • Improved camera rotation to use the shortest path. (#426)
  • Added support for using a background image on GPS mode when LocationComponentActivationOptions#useSpecializedLocationLayer is activated . (#439)
  • Fixed a bug where an in-progress animation of an updating LocationComponent would be interrupted when a style was changed. (#437)
  • Updated documentation to reflect that the FOREGROUND_LAYER constant is usable for relative positioning in both normal and specialized rendering modes. #413

Other changes

  • Updated javadoc documentation for removeSource/removeLayer/removeLayerAt. (#422)
  • Updated GeoJSON library to v5.3.0. (#441)
  • Updated Telemetry library to v5.1.0. (#409)

android-v9.2.1

15 May 01:58
9d96228
Compare
Choose a tag to compare

Changes since Mapbox Maps SDK for Android v9.2.0:

Improvements and bug fixes

  • Added compiler and linker options to reduce binary size for release build. (#382)
  • Fixed a crash when Layer.getFilter() is used with the distance expression. (#380)
  • Reset AndroidRendererBackend properly to prevent a crash during rotation on an Android 4.2.2 x86 tablet. (#381)(h/t ystsoi)

android-v9.2.0

07 May 10:58
14b615a
Compare
Choose a tag to compare

Changes since Mapbox Maps SDK for Android v9.1.0:

Features

  • Added the distance expression for calculating the shortest distance between an evaluated feature and a given GeoJSON object. (#339)
  • The SymbolLayer.iconTextFit property now respects the stretch metadata of any nine-part stretchable image passed into the style.addImage method. You can define the stretchable area of an image by configuring the stretchX, stretchY, content options on Style.addImage to append the requisite metadata. (#314)
  • Added methods to set and get the sort key of features in a CircleLayer at runtime. Features with a higher sort key will appear above features with a lower sort key. (#322)
  • Introduced Source.setVolatile to disable ambient caching of tiles from a source. Use this option on transient sources, such as traffic tilesets, if not showing tiles from a source is preferable to showing outdated tiles should an update request fail. (#355)
  • Introduced Source.minimumTileUpdateInterval to override the expiration time set via HTTP headers with a longer expiration time on the client. (#355)
  • Added Source.maxOverscaleFactor for defining how much a parent tile can be overscaled during rendering. This setting is only needed if a custom source on your map appears blurry or distorted when viewed at new zoom levels. (#299)

User location indicator

  • Introduced an activation option to render the LocationComponent with a dedicated OpenGL layer through LocationComponentActivationOptions#useSpecializedLocationLayer, instead of the combined symbol and circle layer implementation used by default. (#319)
  • Introduced an option to add an animated pulsing circle around the LocationComponent through LocationComponentOptions#pulseEnabled and methods to customize it. (#172)
  • Introduced an option to set a screen area through LocationComponentOptions#trackingMultiFingerProtectedMoveArea where executed gestures will avoid breaking camera tracking when LocationComponentOptions#trackingGesturesManagement is enabled. (#356)

Improvements and bug fixes

  • Improved the default compass engine's heading calculation by accounting for device orientation, ensuring accelerometer and magnetic field sensor events are retained, and pushing updates to the heading even if the sensor is unreliable. (#338)(h/t ystsoi)
  • Correctly call the onFling listener only when the velocity of a gesture meets the threshold to animate the camera. (#356)
  • Enabled adding style images on-demand on MapSnapshotter. (#317)
  • Fixed a crash when changing the user interface in MapSnapshotter.ErrorHandler. (#347)
  • Fixed a crash when calling the Style.removeImage method with the name of a nonexistent image. (#16391)
  • Fixed a crash when encountering an invalid polyline. (#16409)
  • Certain logging statements no longer run on the main thread. (#16325)

Other changes

  • Rollback to System.loadLibrary to fix SoLoader fails to load the native library on x86 devices. (#368)
  • Worked around crashes caused by JobIntentService on devices >= API 26 by using a network request to report errors instead. (#472

android-v9.2.0-beta.1

01 May 00:32
ee808fd
Compare
Choose a tag to compare
android-v9.2.0-beta.1 Pre-release
Pre-release

Changes since Mapbox Maps SDK for Android v9.2.0-alpha.1:

Features

  • Added the distance expression for calculating the shortest distance between an evaluated feature and a given GeoJSON object. (#339)
  • Introduced Source.setVolatile to disable ambient caching of tiles from a source. Use this option on transient sources, such as traffic tilesets, if not showing tiles from a source is preferable to showing outdated tiles should an update request fail. (#355)
  • Introduced Source.minimumTileUpdateInterval to override the expiration time set via HTTP headers with a longer expiration time on the client. (#355)

User location indicator

  • Introduced an activation option to render the LocationComponent with a dedicated OpenGL layer through LocationComponentActivationOptions#useSpecializedLocationLayer, instead of the combined symbol and circle layer implementation used by default. (#319)
  • Introduced an option to add an animated pulsing circle around the LocationComponent through LocationComponentOptions#pulseEnabled and methods to customize it. (#172)
  • Introduced an option to set a screen area through LocationComponentOptions#trackingMultiFingerProtectedMoveArea where executed gestures will avoid breaking camera tracking when LocationComponentOptions#trackingGesturesManagement is enabled. (#356)

Improvements and bug fixes

  • Improved the default compass engine's heading calculation by accounting for device orientation, ensuring accelerometer and magnetic field sensor events are retained, and pushing updates to the heading even if the sensor is unreliable. (#338)(h/t ystsoi)
  • Correctly call the onFling listener only when the velocity of a gesture meets the threshold to animate the camera. (#356)
  • Fixed a crash when changing the user interface in MapSnapshotter.ErrorHandler. (#347)

android-v9.2.0-alpha.1

22 Apr 10:24
ec15d86
Compare
Choose a tag to compare
Pre-release

Changes since Mapbox Maps SDK for Android v9.1.0:

Features

  • The SymbolLayer.iconTextFit property now respects the stretch metadata of any nine-part stretchable image passed into the Style.addImage method. You can define the stretchable area of an image by configuring the stretchX, stretchY, content options on Style.addImage to append the requisite metadata. (#314)
  • Added methods to set and get the sort key of features in a CircleLayer at runtime. Features with a higher sort key will appear above features with a lower sort key. (#322)
  • Added Source.maxOverscaleFactor for defining how much a parent tile can be overscaled during rendering. This setting is only needed if a custom source on your map appears blurry or distorted when viewed at new zoom levels. (#299)

Improvements and bug fixes

  • Enabled adding style images on-demand on MapSnapshotter. (#317)
  • Fixed a crash when calling the Style.removeImage method with the name of a nonexistent image. (#16391)
  • Fixed a crash when encountering an invalid polyline. (#16409)
  • Certain logging statements no longer run on the main thread. (#16325)

android-v9.1.0

07 Apr 11:26
6fa29ce
Compare
Choose a tag to compare

Changes since Mapbox Maps SDK for Android v9.0.0:

Features

  • Added within expression for testing whether an evaluated feature lies within a given GeoJSON object. within accepts Feature, FeatureCollection, Polygon, and MultiPolygon as valid GeoJSON objects. (#198)
  • Added in expression for testing whether an item exists in an array or a substring exists in a string. (#171)
  • Introduced APIs and callbacks for customizing the style used in a MapSnapshotter snapshotter with runtime styling methods. (#268, #292)
  • Added methods to set and get the sort key of features in a FillLayer and LineLayer at runtime. Features with a higher sort key will appear above features with a lower sort key. (#209)
  • Introduced MapboxMap.setMaxPitchPreference and MapboxMap.setMinPitchPreference to constrain a map's pitch. (#199)
  • Introduced ability to configure the zoom level(s) that tiles are prefetched from by Source. This overrides the tile prefetch setting defined by the Map instance. (#184)

Performance improvements

  • Increased stability of label placement when the map is tilted. (#16287)
  • Improved the performance of loading a style that has many style images. (#16187)
  • Fixed a memory leak during zooming when MapboxMapOptions.debugActive is enabled. (#15179, fixed by #15395)

Bug fixes

  • Downloaded offline packs no longer reduce the storage space available for ambient caching of tiles and other resources. (#15622)
  • Fixed conversion of a Map object into a GeoJSON object. (#16243)
  • Fixed issues that would cause an offline region to stop downloading before completion. (#16230, #16240)
  • Fixed an issue where a LineDasharray value of [1, 0] resulted in hairline gaps. (#16202)
  • Fixed Proguard configuration to prevent obfuscation of telemetry event classes. (#306)
  • Fixed a crash that might occur during EGL window surface creation. (#278)
  • Fixed a bug that would cause local CJK glyphs to be rendered incorrectly when generated on a device with the high-contrast accessibility setting enabled. (#289)

Other changes

  • Updated mapbox-events-android to v5.0.0. (#294)

android-v9.1.0-beta.2

27 Mar 08:55
Compare
Choose a tag to compare
android-v9.1.0-beta.2 Pre-release
Pre-release

Changes since Mapbox Maps SDK for Android v9.1.0-beta.1:

  • Introduced APIs and callbacks for customizing the style used in a MapSnapshotter snapshotter with runtime styling methods. (#268, #292)
  • The within expression now consistently evaluates point features accurately when they are near the boundary of the evaluated geometry and when the geometry crosses the antimeridian. (#16319, (#16330)
  • Fixed a bug that would cause local CJK glyphs to be rendered incorrectly when generated on a device with the high-contrast accessibility setting enabled. (#289)
  • Updated mapbox-events-android from v4.7.3 to v5.0.0, which reverts a change to JobIntentService that was published in v4.7.2. (#294)