เอกสาร / การตั้งค่า / Android / Open Mobile Maps
การตั้งค่า Open Mobile Maps
ขั้นตอนการใช้ Open Mobile Maps (io.openmobilemaps:mapscore) ผ่าน MapConductor ไม่ต้องการคีย์ API
MODULE
com.mapconductor:for-openmobilemaps
API KEY
ไม่จำเป็น
VIEW
OpenMobileMapsMapView
TIME
10 นาที
ผู้ให้บริการเดียวกัน แพลตฟอร์มอื่นiOS
ก่อนเริ่ม
สภาพแวดล้อมการพัฒนา Android (Android Studio)
minSdk 28 ขึ้นไป
STEP 01
เพิ่มการพึ่งพา
Open Mobile Maps อยู่ใน Maven Central ไม่จำเป็นต้องเพิ่มแหล่งที่มา
app/build.gradle.ktsKotlin
dependencies {
// Open Mobile Maps
implementation("io.openmobilemaps:mapscore:4.0.0")
// 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-openmobilemaps")
}STEP 02
เพิ่มสิทธิ์
ต้องใช้เครือข่ายในการดึงไทล์ หากไม่ใช้ข้อมูลตำแหน่งเพียง INTERNET ก็เพียงพอ
AndroidManifest.xmlXML
<uses-permission android:name="android.permission.INTERNET" />
STEP 03
กำหนดแหล่งที่มาของไทล์
เนื่องจากไม่มีคีย์ คุณจะต้องกำหนดด้วยตนเองว่าจะดึงไทล์มาจากที่ใด เซิร์ฟเวอร์ไทล์อย่างเป็นทางการของ OpenStreetMap ไม่เหมาะสำหรับการใช้งานปกติในแอปตามนโยบายการใช้งาน ในการใช้งานจริง โปรดใช้การจัดส่งด้วยตนเองหรือแหล่งจัดส่งเชิงพาณิชย์
ตรวจสอบ
สิ่งที่ควรเห็น
แสดงแผนที่โดยมีโตเกียวเป็นศูนย์กลาง หากไทล์โหลดสำเร็จ ถือว่าเสร็จสิ้น
@Composable
fun TestOpenMobileMaps(modifier: Modifier = Modifier) {
val mapState = rememberOpenMobileMapsMapViewState(
mapDesign = OpenMobileMapsDesign.OpenStreetMap,
cameraPosition = MapCameraPosition(
position = GeoPoint(latitude = 35.6812, longitude = 139.7671),
zoom = 11.0,
),
)
OpenMobileMapsMapView(state = mapState, modifier = modifier.fillMaxSize())
}ดีไซน์แผนที่
Notes
OpenStreetMap
สไตล์มาตรฐานของ OpenStreetMap
OpenStreetMapJapan
การแสดงผลที่ปรับแต่งสำหรับญี่ปุ่น
OpenTopoMap
แผนที่ภูมิประเทศ
การแก้ปัญหา
แผนที่สีขาวทั้งหมดและไม่มีไทล์สักแผ่นเข้ามา
- ผู้ให้บริการรายนี้ไม่มีคีย์ API ก่อนอื่นจะตรวจสอบว่าสามารถเข้าถึง URL สไตล์ที่ระบุได้หรือไม่
- ตรวจสอบว่าอุปกรณ์สามารถเชื่อมต่อเครือข่ายได้หรือไม่
แหล่งที่มาของไทล์ตอบกลับด้วย 429 หรือ 403
- เซิร์ฟเวอร์ไทล์อย่างเป็นทางการของ OpenStreetMap มีนโยบายการใช้งานและไม่ได้วางแผนไว้สำหรับการใช้งานปกติจากแอป ในการใช้งานจริง โปรดใช้การจัดส่งไทล์ด้วยตนเองหรือแหล่งจัดส่งเชิงพาณิชย์
ถัดไป
เครื่องหมาย เส้นประกอบ รูปหลายเหลี่ยม วงกลม ภาพพื้นดิน เลเยอร์แรสเตอร์ และ InfoBubble ยังคงใช้งานได้ผ่าน API ทั่วไป โค้ดด้านแอปจะไม่เปลี่ยนแปลงแม้จะสลับผู้ให้บริการ