ドキュメント / セットアップ / iOS / Longdo
Longdo セットアップ
Longdo Map iOS SDK(Longdo Map Framework 4.x)を MapConductor から使う手順です。iOS 版はマーカー・ポリライン・ポリゴン・円・グラウンドイメージ・ラスターレイヤーをネイティブのオーバーレイとして描画します。
PACKAGE
ios-for-longdo
API KEY
必要
MIN iOS
16.0
VIEW
LongdoMapView
前提
Xcode 15 以上
Longdo Map コンソールで発行した API キー
デプロイターゲット iOS 16.0 以上
STEP 01
API キーを取得する
Longdo Map コンソールでキーを発行します。
STEP 02
Swift Package Manager で追加する
Xcode の File > Add Package Dependencies からパッケージ URL を入力します。Longdo Map Framework(バイナリ XCFramework)は依存関係として自動的に入ります。SwiftPM のみの配布です。
Package URLSwift Package Manager
https://github.com/MapConductor/ios-for-longdo
Package.swiftSwift
dependencies: [
.package(url: "https://github.com/MapConductor/ios-sdk-core", from: "1.1.4"),
.package(url: "https://github.com/MapConductor/ios-for-longdo", from: "1.0.0"),
],
targets: [
.target(
name: "YourApp",
dependencies: [
.product(name: "MapConductorCore", package: "ios-sdk-core"),
.product(name: "MapConductorForLongdo", package: "ios-for-longdo"),
]
),
]STEP 03
API キーを渡す
3 通りのいずれでも構いません。
MyApp.swiftSwift
LongdoInitSDK.apiKey = "YOUR_LONGDO_API_KEY"
// or per view:
// LongdoMapView(state: state, apiKey: "YOUR_LONGDO_API_KEY") { ... }
// or add LONGDO_API_KEY to Info.plist動作確認
ここまで動けば完了
バンコクを中心に地図が出て、マーカーと円が描かれれば完了です。
ContentView.swiftSwiftUI
import SwiftUI
import MapConductorCore
import MapConductorForLongdo
struct ContentView: View {
@StateObject private var state = LongdoViewState(
mapDesignType: LongdoDesign.Normal,
cameraPosition: MapCameraPosition(
position: GeoPoint(latitude: 13.7563, longitude: 100.5018),
zoom: 12
)
)
var body: some View {
LongdoMapView(state: state) {
Marker(
position: GeoPoint(latitude: 13.7563, longitude: 100.5018),
icon: DefaultMarkerIcon(label: "A")
)
Circle(
center: GeoPoint(latitude: 13.7563, longitude: 100.5018),
radiusMeters: 1500
)
}
}
}地図デザイン
LongdoDesign は Longdo のベースレイヤーに対応します。
LongdoDesign
Notes
Normal / Easy / Political
標準系のスタイル
Pastel / PastelGray / Light / Gray
淡いスタイル
Night / Dark / Hard
暗色・高コントラスト
Satellite / Hybrid
衛星画像とハイブリッド
Osm
OpenStreetMap ベース
うまくいかないとき
地図が出ない
- API キーが 3 通りのいずれかで確実に渡っているか確認します。
- デプロイターゲットが iOS 16.0 以上か確認します。
マーカーが多いと重い
- Longdo はマーカーを 1 つずつ描画するため、タイリングやクラスタリングによる最適化は効きません。大量のマーカーが必要な場合は別のプロバイダを検討してください。
ビルドが通らない
- ビルドフォルダーをクリアします(Cmd+Shift+K)。
- ~/Library/Developer/Xcode/DerivedData を削除して再ビルドします。
- Swift Package Manager の依存を更新します。CocoaPods との併用は避けてください。
次に
円は Longdo の Circle の半径単位が曖昧なため、測地線のリングをポリゴンとして描いています。半径はメートルで指定できます。