เอกสาร / การตั้งค่า / iOS / Mappls

การตั้งค่า Mappls

คำแนะนำในการใช้ iOS SDK อย่างเป็นทางการของ Mappls (MapmyIndia) กับ MapConductor ติดตั้งด้วย Swift Package Manager และยืนยันตัวตนผ่านไฟล์การกำหนดค่าในแอปพลิเคชัน

MODULE
MapConductorForMappls
API KEY
จำเป็น
VIEW
MapplsMapView
TIME
15 นาที
ผู้ให้บริการเดียวกัน แพลตฟอร์มอื่นAndroidReact

ก่อนเริ่ม

Xcode 15 ขึ้นไป
แอปพลิเคชันที่กำหนดเป้าหมายเป็น iOS 16.0 ขึ้นไป
บัญชีและข้อมูลรับรองของ Mappls (MapmyIndia)
STEP 01

รับข้อมูลรับรอง

ลงทะเบียนแอปพลิเคชันในคอนโซลนักพัฒนาของ Mappls และรับข้อมูลรับรอง ใน iOS การยืนยันตัวตนทำโดยใช้ไฟล์การกำหนดค่าชื่อ .i.conf / .i.olf ไม่ได้ใช้วิธีการส่งคีย์ API เพียงตัวเดียว

STEP 02

เพิ่มแพ็กเกจ

เพิ่มที่เก็บการแจกจ่ายของ Mappls และโมดูล MapConductor โดยใช้ Swift Package Manager

Package.swiftSwift
dependencies: [
    .package(url: "https://github.com/mappls-api/mappls-map-ios-distribution.git", from: "6.1.5"),
    .package(url: "https://github.com/MapConductor/ios-sdk-core", from: "1.3.1"),
    .package(url: "https://github.com/MapConductor/ios-for-mappls", from: "1.0.0"),
]
STEP 03

วางไฟล์ยืนยันตัวตน

รวมไฟล์ .i.conf / .i.olf ที่ได้รับจาก Mappls ไว้ใน bundle ของแอปพลิเคชัน MapConductor จะโหลดไฟล์นี้ก่อนสร้างแผนที่ อย่ารวมไฟล์เหล่านี้ไว้ในการควบคุมซอร์สโค้ด

ตรวจสอบ

สิ่งที่ควรเห็น

แสดงแผนที่ที่มีจุดศูนย์กลางอยู่ที่เดลี หากกระเบื้องโหลดแล้วถือว่าเสร็จสิ้น

import SwiftUI
import MapConductorCore
import MapConductorForMappls

struct TestMappls: View {
    @StateObject private var state = MapplsViewState(
        mapDesignType: MapplsDesign.Default,
        cameraPosition: MapCameraPosition(
            position: GeoPoint(latitude: 28.6139, longitude: 77.2090),
            zoom: 11
        )
    )

    var body: some View {
        MapplsMapView(state: state)
    }
}

ดีไซน์แผนที่

Notes
Default
สไตล์เริ่มต้นที่สามารถใช้ได้โดยไม่ขึ้นกับสัญญา
StandardDay
สไตล์กลางวันมาตรฐาน
StandardNight / GreyDay
ตัวเลือกแบบชำระเงินที่มีค่าใช้จ่ายเพิ่มเติม หากไม่มีสัญญา SDK จะปฏิเสธ

การแก้ปัญหา

แผนที่สีขาวสนิทและไม่มีกระเบื้องโหลดมาเลย

  • ตรวจสอบว่าข้อมูลรับรองได้รับการตั้งค่าก่อนการสร้างแผนที่หรือไม่
  • ตรวจสอบในคอนโซล Mappls ว่าคีย์ถูกต้องและไม่เกินโควต้าการใช้งานหรือไม่
  • ตรวจสอบว่าอุปกรณ์สามารถเชื่อมต่อเครือข่ายได้หรือไม่

เมื่อเปลี่ยนสไตล์จะเกิดข้อผิดพลาด "style not found"

  • StandardNight และ GreyDay เป็นตัวเลือกแบบชำระเงินที่มีค่าใช้จ่ายเพิ่มเติม หากคุณไม่มีสัญญา ให้ใช้ Default หรือ StandardDay

กระเบื้องจาก URL ที่ไม่ใช่ Mappls เช่น เลเยอร์แรสเตอร์ จะไม่แสดง

  • เลเยอร์ HTTP เนทีฟของ Mappls จะทิ้งหรือตัดคำขอที่ไม่มี mappls / mapmyindia ใน URL MapConductor ได้หลีกเลี่ยงสิ่งนี้ไว้แล้ว แต่หากคุณเปลี่ยนโมดูล HTTP ของ SDK เอง การหลีกเลี่ยงก็จะถูกยกเลิก

ถัดไป

เครื่องหมาย, เส้นโค้ง, รูปหลายเหลี่ยม, วงกลม, ภาพพื้นดิน, เลเยอร์แรสเตอร์ และ InfoBubble สามารถใช้งานได้ตามปกติผ่าน API ทั่วไป