首先配置好环境,我使用的环境为:
QT5.13.2
MSVC2017
调用百度地图我使用的是 webengine 类的方法,好像只有MSVC2017支持,希望大家注意,配置环境网上教程很多,多参考几个。
问题一:BMap或者BMapGL未定义
网上的解决方法:在 //api.map.baidu.com/api 前面加上http:,但是之后还是不行,然后我再百度官网下载了新的HTML文件,上面显示3.0版本,API使用3.0版本,使用后 地图可以运行
参考:
问题二:
服务被禁用:这里我一开始使用的是服务端的AK,显示服务被禁用,后来换成浏览器的AK后还是有问题,显示APP REFERER错误之类的信息,这里将referer白名单内容设置为 * 之后,还是有问题,但是重启电脑之后就好了,可以显示地图,并且不报错。
问题三:显示找不到qwebchannel.js文件或者未定义
加上这行代码,并且把文件放入资源文件中,但是显示找不到qwebchannel.js文件,根据报错信息提示,意思是不再支持将文件放入资源文件中,所以我把文件移出来,放在另外的位置:
之后可以实现js文件和QT文件的交互了
工程:
链接:https://pan.baidu.com/s/1ERThXhMTF13sR7Rgs882lg
提取码:h3m3