Uppsetning á MapLibre
Hvernig stýra má MapLibre Native Android gegnum MapConductor. MapLibre sjálft hefur engan API-lykil — útlit kortsins kemur frá því hvaðan stíl-JSON er borið fram. Þetta er stysta uppsetningin af þeim öllum.
Áður en þú byrjar
Ákveddu hvaðan flísarnar koma
MapLibre teiknar flísar, það ber þær ekki fram. Kynningarstílarnir á MapLibreDesign duga til að sannreyna uppsetninguna, en raunnotkun krefst meðvitaðs vals á uppsprettu.
- Ókeypis / samfélag: flísar byggðar á OpenStreetMap, Protomaps (má hýsa sjálf/ur)
- Viðskiptalegt: MapTiler Cloud, Stadia Maps (bæði með ókeypis þrepi)
- Sjálfhýst: keyrðu þitt eigið með einhverju á borð við tileserver-gl
Bættu við viðföngunum
MapLibre-SDK-ið kemur frá Maven Central, svo engra aukastillinga á söfnum er þörf.
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
google()
mavenCentral()
}
}dependencies {
// MapLibre Native Android SDK
implementation("org.maplibre.gl:android-sdk:13.4.1")
// MapConductor BOM pins every module below
implementation(platform("com.mapconductor:mapconductor-bom:1.3.1"))
implementation("com.mapconductor:core")
implementation("com.mapconductor:for-maplibre")
}Bættu heimildum við lýsinguna
Enginn lykill er til að skjóta inn, svo heimildir eru það eina sem þarf.
<manifest>
<!-- Add internet permission for tile loading -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<application>
<!-- no key to inject for MapLibre -->
</application>
</manifest>STAÐFESTA
Það sem þú ættir að sjá
Teiknaðu kortið með stíl. Ef flísar hlaðast og aðdráttur, hliðrun og snúningur virka ertu búin/n.
@Composable
fun TestMapLibre(modifier: Modifier = Modifier) {
val mapState = rememberMapLibreMapViewState(
cameraPosition = MapCameraPosition(
position = GeoPoint(35.6762, 139.6503),
zoom = 12.0,
),
mapDesign = MapLibreDesign.OpenMapTiles,
)
// If the map appears, the setup is correct.
MapLibreMapView(modifier = modifier, state = mapState)
}Kortahönnun
Hvert MapLibreDesign vefur vefslóð á stíl-JSON. Beindu því á þinn eigin stíl með því að smíða sömu gerð.
Bilanaleit
Kortið helst autt
- Athugaðu að stílslóðin sé aðgengileg og JSON-ið gilt.
- Staðfestu að INTERNET-heimildin sé til staðar.
- Leitaðu að net- eða þáttunarvillum í Logcat.
Það eru sérstaklega flísarnar sem hlaðast ekki
- Tvítékkaðu vefslóð flísaþjónsins.
- Athugaðu hvort þú sért að rekast á takmörk ókeypis þreps.
- Hjá viðskiptalegum þjónustuaðila, staðfestu að lykillinn í stílslóðinni sé enn gildur.
Smíðin bregst
- Athugaðu hvort hnit og útgáfa korta-SDK-sins passi við það sem útgáfuskráin lýsir.
- Gakktu úr skugga um að safnið sé skilgreint í settings.gradle.kts — með repositoriesMode stillt á FAIL_ON_PROJECT_REPOS eru repositories-blokkir í einstökum einingum hunsaðar.
- Ef fleiri en eitt korta-SDK er til staðar í einu, leitaðu að árekstrum viðfanga með ./gradlew :app:dependencies.
Næst
Vigurflísar eru minni og teiknast hraðar en raster. Ef þú þarft ónettengda notkun skaltu gera ráð fyrir flísaskyndiminni.