Open Mobile Maps einrichten
So verwenden Sie Open Mobile Maps (maps-core) mit MapConductor. Installieren Sie es mit Swift Package Manager; ein API-Schlüssel ist nicht erforderlich.
Bevor Sie beginnen
Paket hinzufügen
Fügen Sie die Module maps-core und MapConductor mit Swift Package Manager hinzu.
dependencies: [
.package(url: "https://github.com/openmobilemaps/maps-core", from: "4.0.0"),
.package(url: "https://github.com/MapConductor/ios-sdk-core", from: "1.3.1"),
.package(url: "https://github.com/MapConductor/ios-for-openmobilemaps", from: "1.0.0"),
]Kachelquelle festlegen
Da kein Schlüssel vorhanden ist, müssen Sie selbst entscheiden, von wo Sie die Kacheln beziehen. Der offizielle Kachelserver von OpenStreetMap eignet sich aufgrund seiner Nutzungsrichtlinie nicht für die dauerhafte Nutzung in Apps. Verwenden Sie in der Produktion eine eigene Distribution oder eine kommerzielle Quelle.
PRÜFEN
Was Sie sehen sollten
Zeigen Sie die Karte mit Tokio als Zentrum an. Wenn die Kacheln geladen sind, sind Sie fertig.
import SwiftUI
import MapConductorCore
import MapConductorForOpenMobileMaps
struct TestOpenMobileMaps: View {
@StateObject private var state = OpenMobileMapsViewState(
cameraPosition: MapCameraPosition(
position: GeoPoint(latitude: 35.6812, longitude: 139.7671),
zoom: 11
)
)
var body: some View {
OpenMobileMapsMapView(state: state)
}
}Kartendesigns
Fehlerbehebung
Die Karte ist komplett weiß, es wird keine einzige Kachel geladen
- Dieser Anbieter verfügt über keinen API-Schlüssel. Zuerst prüfen Sie, ob die angegebene Stil-URL erreichbar ist.
- Prüfen Sie, ob das Gerät Netzwerkzugang hat.
Von der Kachelquelle werden 429 oder 403 zurückgegeben
- Für den offiziellen Kachelserver von OpenStreetMap gilt eine Nutzungsrichtlinie, die eine dauerhafte Nutzung aus Apps nicht vorsieht. Verwenden Sie in der Produktion eine eigene Kachelverteilung oder eine kommerzielle Quelle.
Weiter
Marker, Polylinien, Polygone, Kreise, GroundImage, Raster-Layer und InfoBubble können über die gemeinsame API weiterhin verwendet werden.