当前位置: 首页 > article >正文

高德地图离线加载解决方案(内网部署)+本地地图瓦片加载

关键词:高德地图、离线部署、内网部署、地图瓦片

目录

鸣谢

写在前面

声明

进入主题

如何使用

写在最后


鸣谢

注意:经测试与反馈,该离线包目前无法运行至 统信UOS 和 麒麟 操作系统,正在想办法解决

2023.12.06

uos和麒麟的内网加载包由CSDN的另一个开发者弄出来了,后续我整合下发出来,最近太忙了

2024.04.09

感谢大佬ZhongruiRao提供的方案,基于此方案写了一个插件集成教程,供大家参考​ 网页链接

鸣谢:@ZhongruiRao

写在前面

近期在项目中需要用到地图,于是我选择了较为大众的高德地图,在所有的功能实现后,得到通知需要在内网进行运行,我断网测试后发现并不能离开网络。官方的插件中发送了部分网络请求,所以导致无法在内网运行(白屏)的情况,于是我通过高德在线的JS API引入外链的方式保存了相关源代码并做了修改,使其所有的网络请求均变为本地请求。

如何使用高德地图请参考官方文档:快速上手-地图 JS API 2.0 | 高德地图API

【我这里用的是高德2.0JS API,所以请查看2.0文档】

声明

  • 本离线包基于高德地图js-api2.0,在此基础进行修改。
  • 本项目仅为个人兴趣开发,不收费,作者也不提供任何付费服务。
  • 本项目仅供个人学习研究使用。
  • 本项目禁止商用,禁止在企业项目开发中使用此地图离线包,禁止使用此离线包以及基于此项目二次开发的软件从事盈利活动。

进入主题

高德离线包我已经存至Gitee(自行下载即可):高德地图离线解决方案: 高德地图离线解决方案

加载地图瓦片(如何下载,如何加载在代码)请参考我的下一篇文章:高德地图内网加载地图瓦片、如何下载地图瓦片资源-CSDN博客

离线路径规划可参考我的另一篇文章:Java SpringBoot项目 + GraphHopper 实现地图离线路径规划-CSDN博客

如何使用

1.将下载的离线包放到项目的public下

2.在index.html中直接加载下载的amap文件夹下的AMap3.js,其余文件不可删除!!!如下图:

37e3b40066234767a122a002fb849315.png

3.在代码中直接new AMap即可,vue项目的话不需要再去导入map插件配置key(因为扒取这个源代码时已经利用了我申请的key),如下图直接使用即可。

引入后提示AMap不存在的,重新运行项目即可

bc665b376c20488bbe597c68e54d867c.png

代码如下

let map = new AMap.Map('map-container', { // 设置地图容器id
    resizeEnable: true,
    zoom: 12,
    resizeEnable: true,
    rotateEnable: true,
    pitchEnable: true,
    center: [94.89, 36.42],
    defaultCursor: 'pointer',
    showLabel: true,  //是否显示文字标注
})

我修改的这个离线包可直接使用 绘点,绘线,动态轨迹,坐标选取 ,地图框选等基本插件,无需再做其他修改

9a8f258c8da346ab88ce040ce9097a81.png73b8496b618f43bab6dd3bc08f533c02.png

211892460bda4cec933b4f1912e0b00f.png

注意:这个离线包没有实际测试包含了哪些插件,现在大家开发后需要断网测试一下看看哪些插件不能用,尽可能的替换掉,以免上了生产环境出现问题

目前已知反馈频率较高的是:AMap.ScaleAMap.ToolBarAMap.MarkerClusteAMap.PolyEditorAMap.MarkerCluster 这些插件不能使用,目前太忙,等有空了我把这些插件测试一下,如果不需要联网我再打进去


http://www.kler.cn/a/443915.html

相关文章:

  • 渗透测试-前端加密分析之RSA加密登录(密钥来源服务器)
  • springboot 配置Kafka 关闭自启动连接
  • 梯度(Gradient)和 雅各比矩阵(Jacobian Matrix)的区别和联系:中英双语
  • Linux线程同步
  • 苹果将推出超薄和折叠款iPhone,2024年带来哪些变化?
  • uniapp连接蓝牙操作(蓝牙设备地锁)
  • []2024年第五届蓝桥杯全国软件和信息技术专业人才大赛(Web 应用开发)
  • c++中如何保持结构体的线程安全?3D坐标的线程安全:从理论到最优解
  • 【myXdb.stop()关闭时保存数据流程分析】xdb关服时数据落地源码
  • 基于阿里云日志服务的程序优化策略与实践
  • 关于目标检测YOLO 各版本区别v1-v11/X/R/P
  • go语言并发读写数据队列,不停写的同时,一次最多读取指定量数据(逐行注释)
  • 【自动驾驶】Ubuntu20.04安装ROS1 Noetic
  • 在C#中,可以通过使用委托(delegate)或者是事件(event)来将方法作为参数传递。
  • Redis篇-14--数据结构篇6--Set内存模型(整数集合intset,哈希表hashtable)
  • 爬虫可能会遇到哪些反爬措施?
  • 【AI热点】小型语言模型(SLM)的崛起:如何在AI时代中找到你的“左膀右臂”?
  • 在 Go 中利用 ffmpeg 进行视频和音频处理
  • Java web概述
  • v-html详细解析与代码实例
  • GB_T 38636 《信息安全技术 传输层密码协议(TLCP)》题目
  • 如何在OneNote中高效使用copilot
  • Pytorch中关于Tensor的操作
  • 基于vue3实现小程序手机号一键登录
  • 常用的前端框架介绍
  • 蓝桥杯摆烂第三天