使用map组件离线打包
![1***@qq.com](https://img-cdn-tc.dcloud.net.cn/account/identicon/e7ebfda73ccbb999ecd4942a6c742002.png)
- 发布:2024-10-12 15:13
- 更新:2025-01-21 16:10
- 阅读:590
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: Windows 11
HBuilderX类型: 正式
HBuilderX版本号: 4.29
手机系统: Android
手机系统版本号: Android 12
手机厂商: 华为
手机机型: mate 60
页面类型: vue
vue版本: vue3
打包方式: 离线
项目创建方式: HBuilderX
操作步骤:
预期结果:
能正常展示地图及定位
能正常展示地图及定位
实际结果:
地图不正常
地图不正常
bug描述:
使用了<map>组件,云端打包正常,离线打包地图组件空白。查看高德地图官网,怀疑是没有调用高德地图SDK的同意隐私政策方法。同时日志输出Didn't find class "com.amap.apis.utils.core.api.AMapUtilCoreApi",说明是在调用相关方法的时候没有找到类。
查看最新离线SDK中高德相关包implementation 'com.amap.api:3dmap:9.5.0', implementation 'com.amap.api:search:9.4.5'。发现这两个的版本号都是比较老的,于是尝试提升版本将com.amap.api:search提升到9.7.1版本后,地图能正常显示,但是出现另一个问题,定位uni.getLocation不成功,日志提示No virtual method setNoLocReqCgiEnable(Z)V in class Lcom/amap/api/location/AMapLocationClientOption,猜测是这个类少了这个方法,希望能告知云端打包的SDK版本,免去这种猜测式的尝试。目前问题还是没有解决,希望得到回复。
![1***@qq.com](https://img-cdn-tc.dcloud.net.cn/account/identicon/e7ebfda73ccbb999ecd4942a6c742002.png)
1***@qq.com (作者)
暂时解决了,不停的尝试发现implementation 'com.amap.api:3dmap:10.0.600' ,implementation 'com.amap.api:search:9.5.0'这个组合就正常了
![g***@qq.com](http://img-cdn-tc.dcloud.net.cn/uploads/avatar/000/94/89/41_avatar_mid.jpg?v=1735810159)
g***@qq.com - uni粉丝
必须上来顶一个!!各种检查尝试都不行,开始以为是meta-data里面少了高德用户名设置的问题。还好来这里搜了一下,不然排查到猴年马月去。这么明显的问题官方都看不见吗。。。
4***@qq.com
我正好也遇到这个问题,换了之后就正常了,感谢分享
2024-11-10 16:30
刘登辉
非常感谢,我也是按照文档
// 高德
// implementation 'com.amap.api:3dmap:9.5.0'
// implementation 'com.amap.api:search:9.4.5'
app打开位置白屏闪退,检查了三天,真的 毫不夸张T_T
2024-11-21 13:22