Skjölun / Uppsetning / Android / HERE

Uppsetning á HERE

Hvernig stýra má HERE SDK (Explore Edition) gegnum MapConductor. HERE gefur út AAR-skrá fremur en Maven-einingu, svo eitt skref felst í að koma skránni fyrir.

MODULE
com.mapconductor:for-here
API KEY
Lyklaauðkenni + leyndarmál
VIEW
HereMapView
TIME
25 mín
Sami þjónustuaðili, aðrir vettvangariOSReact

Áður en þú byrjar

Android-þróunarumhverfi (Android Studio)
HERE-forritaraaðgangur
Aðgangslyklaauðkenni og leyndarmál
AAR-skrá HERE SDK Explore Android (hvaða 4.26.x útgáfa sem er)
STEP 01

Náðu í auðkennin og AAR-skrána

  1. Stofnaðu HERE-forritaraaðgang.
  2. Búðu til verkefni í HERE Developer Portal.
  3. Búðu til aðgangslyklaauðkenni og leyndarmál.
  4. Sæktu AAR-skrá HERE SDK Explore Android. Hvað sem er í 4.26-línunni ætti að virka.
STEP 02

Komdu AAR-skránni fyrir í verkefninu

Settu AAR-skrána í libs/ möppu verkefnisins. Skráarheitið verður að passa nákvæmlega við það sem Gradle vísar í.

project layouttext
<project root>/
└── libs/
    └── heresdk-explore-android-4.27.2.0.309975.aar
Smíðanúmerið í því skráarheiti er aðeins til viðmiðunar — það er útgáfan sem MapConductor er þróað og prófað gegn, ekki útgáfa sem þú verður að festa þig við. MapConductor reiðir sig af ásetningi á eins lítið af yfirborði hvers korta-SDK og hægt er, svo önnur smíð virkar yfirleitt fínt. Settu inn heiti þeirrar AAR-skrár sem þú sóttir í raun.
VARÚÐ
AAR-skrá HERE SDK má ekki dreifa frjálst — haltu henni utan við opinbera útgáfustýringu með því að bæta libs/heresdk-*.aar við .gitignore.
STEP 03

Bættu við Secrets Gradle Plugin

Þannig helst lykillinn utan við útgáfustýringu: viðbótin les secrets.properties og setur gildið inn í staðgengilinn í AndroidManifest.xml við smíði.

(root)/build.gradle.ktsKotlin
plugins {
    id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin") version "2.0.1" apply false
}
STEP 04

Bættu við viðföngunum

AAR-skránni er vísað til sem staðbundinni skrá — láttu heitið passa við þá sem þú komst fyrir.

app/build.gradle.ktsKotlin
plugins {
    // ... other plugins
    id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin")
}

dependencies {
    // HERE SDK (local AAR).
    // This build number is only the one MapConductor is developed against —
    // use the file name of the AAR you downloaded.
    implementation(
        files("${rootProject.projectDir}/libs/heresdk-explore-android-4.27.2.0.309975.aar")
    )

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

    implementation("com.mapconductor:core")
    implementation("com.mapconductor:for-here")
}
STEP 05

Tengdu lýsinguna og auðkennin

HERE notar par — auðkenni og leyndarmál. Bæði fara gegnum staðgengla.

AndroidManifest.xmlXML
<manifest>
    <!-- Add internet and location permissions -->
    <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>
        <!-- HERE Access Key ID -->
        <meta-data
            android:name="HERE_ACCESS_KEY_ID"
            android:value="${HERE_ACCESS_KEY_ID}" />

        <!-- HERE Access Key Secret -->
        <meta-data
            android:name="HERE_ACCESS_KEY_SECRET"
            android:value="${HERE_ACCESS_KEY_SECRET}" />
    </application>
</manifest>
secrets.propertiesProperties
HERE_ACCESS_KEY_ID=your_actual_here_access_key_id
HERE_ACCESS_KEY_SECRET=your_actual_here_access_key_secret
VARÚÐ
Aldrei skila secrets.properties inn í útgáfustýringu. Bættu henni við .gitignore svo hún geti ekki laumast með, og komdu gildinu til skila gegnum umhverfisbreytur (eða aðra örugga leið) í CI.

STAÐFESTA

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

Uppsetningunni er lokið þegar HERE-kortið teiknast.

TestHere.ktJetpack Compose
@Composable
fun TestHere(modifier: Modifier = Modifier) {
    val mapState = rememberHereMapViewState(
        cameraPosition = MapCameraPosition(
            position = GeoPoint(35.6762, 139.6503),
            zoom = 12.0,
        ),
    )

    // If the map appears, the setup is correct.
    HereMapView(modifier = modifier, state = mapState)
}

Kortahönnun

HereMapDesign varpast á kortaskemu HERE — dag/nótt-pör auk stíla sem eru sniðnir að tilteknum notum.

HereMapDesign
Notes
NormalDay / NormalNight
Staðalstíllinn, dagur og nótt
Satellite
Gervihnattamyndir
HybridDay / HybridNight
Gervihnattamyndir með vegum og merkingum
LiteDay / LiteNight
Léttir stílar með minni smáatriðum
LogisticsDay
Sniðið að vöruflutningum
RoadNetworkDay
Áhersla á vegakerfið

Bilanaleit

Kortið hleðst aldrei

  • Athugaðu aðgangslyklaauðkennið og leyndarmálið í secrets.properties.
  • Staðfestu að lykillinn sé enn virkur.

Gradle finnur ekki AAR-skrána

  • Athugaðu að AAR-skráin sé í libs/.
  • Gakktu úr skugga um að skráarheitið passi nákvæmlega við build.gradle.kts, útgáfunúmerið meðtalið.

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

Þegar HereMapView teiknast fara yfirlögin á gegnum sama sameiginlega API og hjá öllum öðrum þjónustuaðilum.