The Mapbox Maps SDK for iOS is an open-source framework for embedding interactive map views with scalable, customizable vector maps into Cocoa Touch applications on iOS 9.0 and above using Objective-C, Swift, or Interface Builder. It takes stylesheets that conform to the Mapbox Style Specification, applies them to vector tiles that conform to the Mapbox Vector Tile Specification, and renders them using OpenGL.
Changes in version 5.3.0
This release changes how offline tile requests are billed — they are now billed on a pay-as-you-go basis and all developers are able raise the offline tile limit for their users. Offline requests were previously exempt from monthly active user (MAU) billing and increasing the offline per-user tile limit to more than 6,000 tiles required the purchase of an enterprise license. By upgrading to this release, you are opting into the changes outlined in this blog post and #15380.
Styles and rendering
- Fixed flickering on style change for the same tile set. (#15127)
- Fixed performance issues when tilting a map with custom content insets. (#15195)
- Fixed an issue where animated camera transitions zoomed in or out too dramatically. (#15281)
- Enabled variable label placement when
MGLSymbolStyleLayer.textAllowsOverlapis set to true. (#15354)
- Added the
MGLSymbolStyleLayer.textWritingModeslayout property. This property can be set to
- Fixed rendering and collision detection issues with using
MGLSymbolStyleLayer.iconTextFitproperties on the same layer. (#15367)
- Fixed symbol overlap when zooming out quickly. (15416)
- Fixed a rendering issue where non-SDF icons would be treated as SDF icons if they are in the same layer. (#15456)
- Fixed a bug where glyphs generated through the LocalGlyphRasterizer interface were changing fonts during some zoom changes. (#15407)
- Fixed use of objects after moving, potentially causing crashes. (#15408)
- Fixed a possible crash that could be caused by invoking the wrong layer implementation casting function. (#15398)
- Fixed a rare crash when tile download requests returned “404 Not Found” errors. (#15313)
MGLLoggingLevelhas been updated to better match core log levels. You can now use
MGLLoggingConfiguration.loggingLevelto filter logs from core. (#15120)
- Fixed an issue where the scale bar could show
0 mminstead of
See the full changelog for previous releases.