Skjölun / Byrja / MapLibre

Fyrsta kortið þitt með MapLibre

Hvernig teikna má MapLibre-kort með MapConductor. Uppsetningin er ólík eftir vettvangi, en kóðinn sem teiknar kortið og yfirlög þess fylgir sama líkani alls staðar.

TIME
5 mín
PROVIDER
MapLibre
API KEY
Enginn
LICENSE
OSS
Vettvangur
Aðeins uppsetningin er ólík

01 · Uppsetning

Bættu core og for-maplibre við viðföngin þín. Að nota annan þjónustuaðila þýðir að skipta út þeirri einu einingu.

settings.gradle.ktsKotlin
dependencyResolutionManagement {
    repositories {
        google()
        mavenCentral()
    }
}
app/build.gradle.ktsKotlin
dependencies {
    implementation(platform("com.mapconductor:mapconductor-bom:1.3.1"))
    implementation("com.mapconductor:core")
    implementation("com.mapconductor:for-maplibre")
    // valfrjálst: compose / icons / heatmap / marker-clustering / geojson / kml
}

02 · Veldu flísarnar þínar

MapLibre sjálft þarf engan API-lykil — útlit kortsins ræðst af því hvaðan flísarnar koma.

DEMO TILES

Byrjaðu á kynningarflísum

Sendu MapLibreDesign.DemoTiles eða OpenMapTiles til að fá virkt kort án nokkurs lykils.

HOSTED TILES

Hýstu flísar fyrir raunnotkun

Fyrir hýsta þjónustu á borð við MapTiler skaltu setja lykil þeirrar þjónustu inn í stílslóðina.

NOTE

Kynningarflísar eru aðeins til prófunar. Notaðu þínar eigin eða viðskiptalega flísaþjónustu í raunnotkun.

03 · Hello Map

Búðu til stöðuhlut sem geymir stöðu myndavélarinnar og réttu hann kortasýninni. Yfirlögin — merkið og upplýsingablaðran — eru lýst sem börnum: snerting á merkið sýnir blöðruna, snerting á kortið lokar henni.

Haltu stöðuhlutnum allan líftíma einingarinnar. Uppfærsla á eigindum hans tekur gildi á kortinu án þess að sýnin sé endurbyggð.
SimpleMapScreen.kt · Jetpack Compose
@Composable
fun SimpleMapScreen(modifier: Modifier) {
    var selected by remember { mutableStateOf<MarkerState?>(null) }

    val mapState = rememberMapLibreMapViewState(
        cameraPosition = MapCameraPosition(
            position = GeoPoint(35.6812, 139.7671),
            zoom = 14.0,
        ),
        mapDesign = MapLibreDesign.OsmBright,
    )
    val markerState = remember {
        MarkerState(
            position = GeoPoint(35.6812, 139.7671),
            onClick = { selected = it },
        )
    }

    MapLibreMapView(
        modifier = modifier,
        state = mapState,
        onMapClick = { selected = null },
    ) {
        Marker(markerState)
        selected?.let {
            InfoBubble(marker = it) { Text("Hello, MapConductor") }
        }
    }
}

RESULT · Það sem þú ættir að sjá

Kort miðað á Tókýóstöð með einu merki. Snertu merkið og upp kemur blaðra með „Hello, MapConductor“ — þá er öll kennslan farin að virka.

MapLibre · Marker · InfoBubble

04 · Skiptu um þjónustuaðila

Haltu skjákóðanum og skiptu um viðfangið og heiti sýnarinnar til að keyra á öðrum þjónustuaðila. Það sem breytist er uppsetningin: að fá lykil, og hvernig það SDK vill láta frumstilla sig.

Google Maps

Apple MapKit

Leaflet

OpenLayers

Azure Maps

Cesium

Open Mobile Maps

Tengdar síður