百度地图离线API开发(真正的离线开发)

article/2025/8/28 16:15:30

         公司现在做的一个项目本来用的是google离线地图,但是发现谷歌的地图数据很久没更新数据了,中国的城市发展这么快,好多地方地图和现实都对不上了。发现百度地图数据更新挺快的(呵呵,毕竟是国产的吗),最后公司决定要把google地图换成百度地图。就把此重任交个了本小侠,我上网一查,百度地图根本就不提供离线地图包。小侠我顿时觉得掉进坑里了。哎,谁让本小侠是打工的呢,命苦啊。只能顶头硬上了。

 

         于是,本小侠就拼命的百度啊,翻墙google“百度地图离线包”,搜了一个星期终于有点眉目了。但是发现网上的百度离线地图有两个致命缺陷:

         1,不支持IE

         2,地图的功能很少,不支持聚合,不支持画多边形等等。

这显然不符合公司的要求,于是本小侠决定经知己研究一个全新的,经过我三个月的研究,终于搞定了百度离线地图。啥都不说,先看看本小侠的战果吧:

 

地图纯离线:


 

 

 

支持IE7891011(已测),更高版本还没测试;fireFixchrome等主流浏览器。

支持画圆,画多边形等:

 

支持多点聚合:

 

 

呵呵,效果还不错吧!

 

下面说下本小侠的开发思路:

         既然百度提供在线的地图,我们想要的是在线的,那么我们就要想办法把在线的代码改成离线的代码。就这么简单!

 

1.首先获取百度 JavaScript API

  首先用浏览器打开http://api.map.baidu.com/api?v=1.3如下图所示:

其中http://api.map.baidu.com/getscript?v=1.3&ak=&services=&t=20150527115231个链接就是我们要找的API文件,

同样在浏览器中打开它,并另存为诸如“apiv1.3.min.js”

 

还有百度地图必须的一些控件,光标,logo之类的图片也下载下来

 

2.修改“apiv1.3.min.js”把里面的地图控件的图片,光标,logo等链接替换成本地的。

 

3.下载依赖模块API文件(非常关键)

此文件必不可少,如果缺少某个依赖模块,则无法使用相应的API。这个请求文件的原理是根据你在自己页面中使用的API来向官网请求相应的依赖模块API,参数的字符串格式是根据所使用依赖模块的顺序生成“模块名”以“,”分隔。

<script type="text/javascript">
var map = new BMap.Map("container",{mapType: BMAP_NORMAL_MAP});
var point = new BMap.Point(116.404, 39.915);    // 创建点坐标
map.centerAndZoom(point,5);                     // 初始化地图,设置中心点坐标和地图级别。
 
//map.addControl(new BMap.MapTypeControl());
map.addControl(new BMap.NavigationControl());
map.enableScrollWheelZoom();                  // 启用滚轮放大缩小。
map.enableKeyboard();                         // 启用键盘操作。  
//map.setCurrentCity("北京");          // 设置地图显示的城市此项是必须设置的
</script>

 

所请求的依赖库参数是http://api.map.baidu.com/getmodules?v=1.3&mod=map,oppc,tile,control

 

为了省去麻烦,Demo中的依赖库命名为modules(可以根据自己需要修改),在Demo文件/js路径下,里面已有map,oppc,tile,control,menu,marker,infowindow这几个模块

 

可以根据自己的需要从这个地址得到:http://api.map.baidu.com/getmodules?v=1.3&mod=模块名,然后将内容添加到modules文件中。

 

 

4,Demo文件中的modules文件中在map模块部分已经去掉了百度版权信息,

 

由于本人时间有限,代码资源包和更详尽的信息请访问QQ空间:2926963574查看。


http://chatgpt.dhexx.cn/article/scqYu1NX.shtml

相关文章

vue百度地图加载离线瓦片(包含百度离线文件+瓦片下载器)

公司近段时间在搞离线地图&#xff0c;开发离线地图我目前知道的有两种方法&#xff1a; 1、把全国每个城市经纬度坐标拿到利用highcharts渲染到页面 2、下载地图瓦片使用百度、高德…读取瓦片数据渲染到页面 今天主要说一下百度地图加载离线瓦片并标点、连线 1、首先要下载…

百度离线地图JS API V3.0

首先&#xff0c;百度地图JavaScript API 3.0版本与2.0版本相比增加了几个小功能&#xff0c;整体没有大的改动&#xff0c;具体可以在官网上查阅。于是就照着先前大佬们分享的2.0离线版本进行3.0版本的制作&#xff0c;附上大佬链接&#xff1a;最新百度地图API V2.0 离线版本…

百度文件下载慢怎么办?~教你百度网盘无需VIP离线下载大文件

百度文件下载慢怎么办&#xff1f;&#xff5e;教你百度网盘无需VIP离线下载大文件 众所周知&#xff0c;百度网盘的文件已经对非会员进行了各种限速。不过由于国内其他网盘基本都残废了&#xff0c;百度网盘作为仅存的少数几个&#xff0c;需求还是很大的&#xff0c;经常会碰…

百度地图之离线下载功能

随时随地阅读更多技术实战干货&#xff0c;获取项目源码、学习资料&#xff0c;请关注源代码社区公众号(ydmsq666) 百度SDK中提供了离线下载功能&#xff0c;这样在有网络的时候可以把地图下载下来&#xff0c;那么以后在无网的时候就可以使用地图功能了&#xff0c;百度Demo代…

JavaWeb做项目所需模板-代码库(开源)

→→点击进入DMAKU代码库 学如逆水行舟&#xff0c;不进则退

ACM图论在线画图工具分享 【csacadmy app Graph Editor】

最近忙着写关于图论论文&#xff0c;网上找了找终于找到了这个很强大的在线画图工具&#xff0c;它可以自动生成边和顶点 你只需要按圈起来的格式输入即可 也可以选择有向边和无向边 从0开始或者从1开始 网站地址如下: https://csacademy.com/app/graph_editor/ 点击跳转 下…

【编译原理】构造产生如下语言的上下文无关文法各一个:

13.构造产生如下语言的上下文无关文法各一个: (1) (an bm c2m | n,m≥0 } S->AB A->ε|aA B->ε|bBcc(2) w c wR| w∈{a,b}* } S->aSa S->bSb S->c(3) {am bn ck | mn或nk } S->aSb|bSc|ε学如逆水行舟&#xff0c;不进则退

【建议收藏】18个适合程序员的在线学习网站,每个我都帮您试过了!

关注“Java后端技术全栈” 回复“000”获取大量电子书 学如逆水行舟&#xff0c;不进则退&#xff01; 程序员是最需要学习的群体之一&#xff01; 学习的方法多种多样&#xff0c; 学习的渠道也是丰富多彩&#xff0c; 有的喜欢通过阅读技术文档来学习&#xff0c; 有的喜欢通…

信息收集-目录扫描篇

学如逆水行舟&#xff0c;不进则退&#xff1b;心似平原走马,易放难收。 ​ 网站目录本质上就是我们的文件夹&#xff0c;不同的文件夹放着不同的文件。 网站目录示例&#xff1a; 进行目录扫描可以扩大我们的测试范围&#xff0c;从而找到更多能利用的东西&#xff0c;例如…

笔试面试题目:平衡二叉树的判断

一. 前面的话 学如逆水行舟&#xff0c;不进则退。心如平原野马&#xff0c;易放难收。春节假期&#xff0c;基本结束&#xff0c;是该回归正常的节奏了。 生活和工作&#xff0c;需要平衡。紧张和松弛&#xff0c;亦需平衡。今天&#xff0c;我们来聊一个笔试面试题目&#…

leetcode每日一题寒假版-2022-12-08 1812. 判断国际象棋棋盘中一个格子的颜色(easy)

&#x1f6a9; 学如逆水行舟&#xff0c;不进则退。 —— 《增广贤文》 2022-12-08 1812. 判断国际象棋棋盘中一个格子的颜色&#xff08;easy) 题目描述&#xff1a; 给你一个坐标 coordinates &#xff0c;它是一个字符串&#xff0c;表示国际象棋棋盘中一个格子的坐标。下…

如何养成学习的习惯

微信搜索【程序员囧辉】&#xff0c;关注这个坚持分享技术干货的程序员。 前言 学如逆水行舟&#xff0c;不进则退。每天进步一点点&#xff0c;总有一天能完成蜕变。本文是自己一路上走来的一些心得体会&#xff0c;希望能帮助到一些人逐步养成学习的习惯。 本文面向的人 已经…

Node.js全栈开发笔记与心得

highlight: a11y-dark 一、Node.js 全栈开发资料 1、前端入门基础 慕课网HTML CSS入门慕课网JS入门 javascript进阶篇 菜鸟教程html部分 菜鸟教程CSS部分阮一峰js入门 阮一峰es6教程 2、node 后端入门基础 node入门 Linux基础知识mysql数据库知识 数据库事务sequelize中…

学习如逆水行舟,只有坚持不断的学习,才能保持进步!我置顶了这些公众号

学习如逆水行舟&#xff0c;不进则退&#xff1b;只有坚持不断的学习,才能保持进步。今天给大家精心挑选的这几个优质的公众号&#xff0c;在行业深耕已久&#xff0c;相信大家一定会有所收获&#xff0c;感兴趣的可以关注一下。 前端技术精选 前端技术精选&#xff0c;分享最新…

移动磁盘显示由于IO设备错误,无法运行此项请求的文件找到办法

移动磁盘打不开由于IO设备错误,无法运行此项请求&#xff0c;是因为这个I盘的文件系统内部结构损坏导致的。要恢复里面的数据就必须要注意&#xff0c;这个盘不能格式化&#xff0c;否则数据会进一步损坏。具体的恢复方法看正文 工具/软件&#xff1a;星空数据恢复软件 步骤1&a…

如何找回由于IO设备错误,无法运行此项请求移动磁盘的文件

由于IO设备错误,无法运行此项请求说明这个盘的文件系统结构损坏了。在平时如果数据不重要&#xff0c;那么可以直接格式化就能用了。但是有的时候里面的数据很重要&#xff0c;那么就必须先恢复出数据再格式化。具体恢复方法可以看正文了解&#xff08;不格式化的恢复方法&…

移动硬盘提示由于IO设备错误,无法运行此项请求,要怎样寻回资料

由于IO设备错误,无法运行此项请求说明这个盘的文件系统结构损坏了。在平时如果数据不重要&#xff0c;那么可以直接格式化就能用了。但是有的时候里面的数据很重要&#xff0c;那么就必须先恢复出数据再格式化。具体恢复方法可以看正文了解&#xff08;不格式化的恢复方法&…

出现io error

今天写软件&#xff0c;使用手机调试&#xff0c;就只有HTC D816V显示IO error错误&#xff0c;其他手机都正常&#xff08;mx4 flyme4&#xff0c;moto x 4.4.2&#xff0c;htc u11 8.0&#xff0c;nexus 6p 8.1&#xff0c;安卓模拟器6.0&#xff09;也重启试过还是不行&…

硬盘提示无法访问由于IO设备错误的数据找回方法

D盘打不开由于IO设备错误&#xff0c;是因为这个I盘的文件系统内部结构损坏导致的。要恢复里面的数据就必须要注意&#xff0c;这个盘不能格式化&#xff0c;否则数据会进一步损坏。具体的恢复方法看正文 工具/软件&#xff1a;星空数据恢复软件 步骤1&#xff1a;先下载并解压…

硬盘无法访问由于IO设备错误,无法运行此项请求,里面的资料怎么寻回

机械硬盘打不开由于IO设备错误,无法运行此项请求&#xff0c;是因为这个I盘的文件系统内部结构损坏导致的。要恢复里面的数据就必须要注意&#xff0c;这个盘不能格式化&#xff0c;否则数据会进一步损坏。具体的恢复方法看正文 工具/软件&#xff1a;流星数据恢复软件 步骤1&a…