Uniapp离线打包配置高德地图,报错getLocation:fail not support gcj02
默认的SDK加载地图的时候会有这个报错,下面是解决办法:
一、首先根据官方文档添加UTS支持
1、将utsplugin-release.aar拷贝到项目的libs目录下
2、在app项目的build.gradle中添加如下内容
dependencies {
implementation "com.squareup.okhttp3:okhttp:3.12.12"
implementation "androidx.core:core-ktx:1.6.0"
implementation "org.jetbrains.kotlin:kotlin-stdlib:1.8.10"
implementation "org.jetbrains.kotlin:kotlin-reflect:1.8.10"
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4"
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.4"
implementation "com.github.getActivity:XXPermissions:18.63"
}3、在项目根目录的build.gradle下添加jitpack依赖,参考:
allprojects {
...
repositories {
maven { url 'https://jitpack.io' }
}
}二、参考官方文档添加高德Map组件,进行下面的操作
1、将map-amap-release.aar 和geolocation-amap-release.aar以及weex_amap-release.aar拷贝到项目的libs目录下
因为uni.chooseLocation是nvue实现的,所以也需要把weex_amap-release.arr拷贝进去
2、在主工程的build.gradle文件配置dependencies
android {
xxxxxxxx
defaultConfig {
xxxxxxxx
}
}
dependencies {
xxxxxxxx
implementation "com.amap.api:3dmap-location-search:10.0.700_loc6.4.5_sea9.7.2"
}3、Androidmainfest.xml文件需要修改的项,需要在application节点前添加权限
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
<uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"></uses-permission>
<uses-permission android:name="android.permission.READ_LOGS"></uses-permission>
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>4、application节点下配置如下代码:
<meta-data android:name="com.amap.api.v2.apikey" android:value="%appkey_android%"/>
<service android:name="com.amap.api.location.APSService"></service>5、dcloud_properties.xml文件需要修改的项
<feature name="Maps" value="io.dcloud.js.map.amap.JsMapPluginImpl"></feature>三、配置好manifest.json里的地图相关key,以及权限,重新build并运行
Uniapp离线打包配置高德地图,报错getLocation:fail not support gcj02
https://www.tab6.site/archives/uniappchi-xian-da-bao-pei-zhi-gao-de-di-tu-bao-cuo-getlocation-fail-not-support-gcj02