Note
This repository only exists for the purpose of binary distribution of MapLibre Native for iOS on the Swift Package Index. Please use the main MapLibre Native repository to report issues or ask for help.
MapLibre Native is a community-led fork derived from mapbox-gl-native before their switch to a non-OSS license. The fork also includes Maps SDK for iOS and macOS (forked from mapbox-gl-native-ios) and Android SDK (forked from mapbox-gl-native-android).
To add a package dependency to your Xcode project, select File > Swift Packages > Add Package Dependency and enter its repository URL. See Adding Package Dependencies to Your App.
You can override the MapLibre package dependency and edit its content by adding it as a local package. See Editing a Package Dependency as a Local Package.
For example, you can add this to Package.swift
, if you are interested in testing the Mapbox framework with another framework.
products: [
.library( name: "Mapbox", targets: ["Mapbox"]),
.library( name: "MetalANGLE", targets: ["MetalANGLE"])
],
dependencies: [ ],
// target path should be relative to package root
targets: [
.binaryTarget(name: "Mapbox", path: "Mapbox.xcframework"),
.binaryTarget(name: "MetalANGLE", path: "MetalANGLE.xcframework")
]
Other Swift Packages documentation from developer.apple.com
- Swift packages "bundle source files, binaries, and resources in a way that’s easy to use in your app’s project."
- Distributing binary frameworks as Swift packages to "make binaries available to other developers by creating Swift packages that include one or more XCFrameworks."
- Find out if a package dependency references a binary and verify the binary’s authenticity. See Identifying Binary Dependencies.
- WWDC20 Distribute binary frameworks as Swift packages, which describes several features of a binary targets.
When you download this repo there is a Swift Playground that allows you to change the style and play around with a very simple rendered map.
- Download this repo
- Navigate to the folder where you
clone
d, and openPackage.swift
in at least Xcode 12. - Run Playground by choosing
Editor
>Run Playground
or⇧-⌘-⏎
- See issue maplibre-gl-native-distribution#8 for screenshots of the MapLibre for Swift Playgrounds in action.