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

การตั้งค่า Mappls

ขั้นตอนการใช้ Mappls (MapmyIndia) Android SDK อย่างเป็นทางการจาก MapConductor การยืนยันตัวตนดำเนินการผ่านไฟล์การกำหนดค่าที่วางไว้ในแอป

MODULE
com.mapconductor:for-mappls
API KEY
จำเป็น
VIEW
MapplsMapView
TIME
15 นาที
ผู้ให้บริการเดียวกัน แพลตฟอร์มอื่นiOSReact

ก่อนเริ่ม

สภาพแวดล้อมการพัฒนา Android (Android Studio)
บัญชีและข้อมูลรับรอง Mappls
STEP 01

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

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

STEP 02

เพิ่มที่เก็บ

Mappls SDK ถูกจัดจำหน่ายจากที่เก็บของ Mappls เอง ไม่ใช่จาก Maven Central

settings.gradle.ktsKotlin
dependencyResolutionManagement {
    repositories {
        google()
        mavenCentral()
        maven { url = uri("https://maven.mappls.com/repository/mappls/") }
    }
}
STEP 03

เพิ่มการพึ่งพา

เพิ่ม Mappls SDK และโมดูล MapConductor เวอร์ชันจะถูกจัดตำแหน่งโดย BOM

app/build.gradle.ktsKotlin
dependencies {
    // Mappls Android SDK
    implementation("com.mappls.sdk:mappls-android-sdk:9.0.3")

    // MapConductor BOM pins every module below
    implementation(platform("com.mapconductor:mapconductor-bom:1.3.1"))

    implementation("com.mapconductor:core")
    implementation("com.mapconductor:compose")
    implementation("com.mapconductor:for-mappls")
}
STEP 04

ตั้งค่าการยืนยันตัวตน

วาง .a.conf / .a.olf ที่ได้รับจาก Mappls ไว้ในแอป และใช้ปลั๊กอิน Mappls Gradle (com.mappls.services.android) MapConductor จะไม่อ่านข้อมูลรับรองจาก AndroidManifest ต้องเริ่มต้นด้วยวิธีของ Mappls SDK เองก่อนสร้างแผนที่ อย่าเพิ่มไฟล์การกำหนดค่าลงในการจัดการซอร์สโค้ด

ตรวจสอบ

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

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

@Composable
fun TestMappls(modifier: Modifier = Modifier) {
    val mapState = rememberMapplsMapViewState(
        mapDesign = MapplsDesign.Default,
        cameraPosition = MapCameraPosition(
            position = GeoPoint(latitude = 28.6139, longitude = 77.2090),
            zoom = 11.0,
        ),
    )

    MapplsMapView(state = mapState, modifier = modifier.fillMaxSize())
}

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

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

การแก้ปัญหา

แผนที่ขาวสะอาด ไม่มีไทล์ใดๆ มาเลย

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

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

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

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

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

ถัดไป

คุณยังสามารถใช้ Marker, Polyline, Polygon, Circle, GroundOverlay, RasterLayer และ InfoBubble ผ่าน API ทั่วไปได้เหมือนเดิม โค้ดแอปพลิเคชันจะไม่เปลี่ยนแปลงแม้ว่าจะเปลี่ยนผู้ให้บริการ