Skip to content

maplibre/maplibre-gl-native-distribution

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

75 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MapLibre Native for iOS

Requires Xcode 12 Requires Swift 5.3 SPM compatible

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).


Add MapLibre to your Project

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.

Swift Packages Development

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


Test MapLibre with a Swift Playgrounds

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 cloned, and open Package.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.