Maps SDK v10

In GA & Ready For Production

No items found.

Nov 3, 2021

Maps SDK v10

In GA & Ready For Production

Guest

No items found.

Guest

Nov 3, 2021

The Mapbox Mobile Maps SDK v10 is ready for download by all Mapbox users today in General Availability. This production-ready release sets the foundation of our mobile SDK for the future: generated code in Swift and Kotlin, a full transition from 2D to 3D, improved offline support, and major rendering pipeline optimizations that deliver faster startup times and framerate performance are just a few of the major architectural changes introduced. And it’s now ready for everyone.

Performance

v10 is fast—users will feel its industry-leading performance throughout their maps experience, starting with load time. Mapbox maps load in just over half a second on Android and 1 second on iOS, beating alternatives on both platforms:

From SQL read batching to smarter caching, v10’s optimizations add up to a 25-35% improvement in core rendering performance. On iOS, full support for Metal means a modern & efficient graphics pipeline. On Android, the new render cache system delivers an additional framerate boost:

These performance advantages don’t just mean smooth maps. They mean more cycles for your app to do its work, lower battery impact, and happier users that are less likely to churn.

Features

v10 unlocks entirely new map experiences. New 3D terrain and globe APIs work with all previously built applications, styles, and custom designed maps, and can be enabled with just a few lines of code.

These 3D capabilities are paired with a new and more powerful camera system. Developers are free to choose between the SDK’s familiar and intuitive default animations or taking full control of the camera’s position in space.

"Our customers expect a map experience that's as effective on our wristwatches as it is in our mobile app. Mapbox gives us the control we need to deliver it on all of our platforms."

The Snapshotter API has gained new capabilities, making it simple to create still images from a map that’s on screen or to render them silently in the background. With added support for runtime styling, there’s no longer any gap between a user’s on-device map and what they can share on social or send to a static secondary display.

Offline is more powerful, too. An all-new tile pack architecture delivers dramatic savings in download time. Applications using their own custom tilesets or previous offline format continue to be supported with backwards-compatibility for legacy offline integrations.

v10 also brings network savings, particularly when using styles with Japanese, Korean, or Chinese fonts. Local glyph rendering can cut initial bandwidth use by as much as 18%. CJK rendering has been revised and improved, providing more accurate results and full retina support.

Great for users, great for developers

The Maps SDK improves developer experience. That begins with first-class support for Swift and Kotlin, as well as SPM and Metal on iOS.

The iOS and Android SDK APIs are aligned with each other and with the Mapbox Style Spec, making the map experience consistent across every platform. Simplified object lifecycle handling means code is smaller, more expressive, and harder to get wrong.

And manipulating map styles at runtime is easier thanks to new domain-specific languages. Here’s how iOS developers constructed a background color transition before v10:


let colorStops: [NSNumber: UIColor] = [
    0: .red,
    14: .blue
];

layer.backgroundColor = NSExpression(format:
    "mgl_interpolate:withCurveType:parameters:stops:($zoomLevel, 'linear', nil, %@)",
    colorStops];

The same effect can now be achieved with code that’s not only more readable, but 50% more concise:


Exp(.interpolate) {
    Exp(.linear)
    Exp(.zoom)
    0
    UIColor.red
    14
    UIColor.blue
}

All-new observability APIs provide granular visibility into the behavior of the map, down to how individual tiles are loaded and parsed. Fully-wrapped exceptions mean crashes are rare and easier to debug than ever.

The SDK’s design is modular, making it possible to swap out default gesture handling, location management, and even networking with developers’ own implementations, streamlining app architecture and making it possible to support requirements like custom auth.

It’s time to start building

The time is right for all Mapbox mobile developers to begin planning their move to v10. The transition to GA means stabilized APIs and a more deliberate release cadence. To make the transition easy, we’ll be publishing expanded documentation in the weeks and months to come. You can already check out our new guides devoted to styles and camera animation (iOS, Android).

v10 delivers maps that are more powerful and performant than ever before, with a modern developer experience and a foundation that can harness the full power of the Mapbox platform. Like always, all you need to get started is a Mapbox account.

We’re grateful to everyone who joined us for v10’s pre-GA releases. Your feedback has helped make this the best Maps SDK we’ve ever published.

No items found.
No items found.

Maps feature data from Mapbox © Mapbox, OpenStreetMap © OpenStreetMap and their data partners, including Maxar (if applicable, © Maxar).

Related articles