Mapbox Maps SDK for iOS
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.
For setup information, check out the Mapbox Maps SDK for iOS homepage. For detailed usage instructions, read “First steps with the Mapbox Maps SDK for iOS” and consult the online examples.
If you have any questions, please see our help page. We welcome your bug reports, feature requests, and contributions.
Changes in version 4.3.0
Styles and rendering
- Added an
MGLMapView.preferredFramesPerSecond
property that controls the rate at which the map view is rendered. The default rate now adapts to device capabilities to provide a smoother experience. (#12501) - Token string syntax (
"{token}"
) inMGLSymbolStyleLayer
text
andiconImageName
properties is now correctly converted to the appropriateNSExpression
equivalent. (#11659) - Fixed a crash when switching between two styles having layers with the same identifier but different layer types. (#12432)
- Added a new option to
MGLSymbolPlacement
,MGLSymbolPlacementLineCenter
, that places the label relative to the center of the geometry. (#12337) - Added a
MGLShapeSourceOptionLineDistanceMetrics
property that enables or disables calculating line distance metrics.
User location
- Added an
MGLMapView.locationManager
property andMGLLocationManager
protocol for tracking user location using a custom alternative toCLLocationManager
. (#12013) - Fixed a crash that occurred when
MMELocationManager
was deallocated and the delegate was reporting updates. (#12542)
Other changes
- Fixed a crash that occurred when the user started a gesture before the drift animation for a previous gesture was complete. (#12148)
- Fixed an issue where the symbols for
MGLMapPointForCoordinate
could not be found. (#12445) - Fixed an issue causing country and ocean labels to disappear after calling
-[MGLStyle localizeLabelsIntoLocale:]
when the system language is set to Simplified Chinese. (#12164) - Closed a security vulnerability introduced in 4.1.0 that would potentially allow the owner of a style to compromise apps loading that style. (#12571)
- Reduced binary size and improved performance by enabling LTO. (#12502)
Recent changes
See the full changelog for previous releases.