uni-app APP云端打包后,百度地图marker设置自定义图标后不能显示 已解决
uni-app APP云端打包后,百度地图marker设置自定义图标后不能显示 已解决
真机测试正确。云打包不正确。
请帮解决
问题未解决。请大侠帮助
能正确取到手机的经纬度,但不能创建地图(地图为空,无内容)
更多关于uni-app APP云端打包后,百度地图marker设置自定义图标后不能显示 已解决的实战教程也可以访问 https://www.itying.com/category-93-b0.html
版本号为 HBuilder
9.1.14.201808032109
???
顶一下。问题未解决。
是不是云打包的BUG
如果manifest.json 里面的SDK百度地图的key配置没错的话
/**
* @param {Maps} 地图对象
* @param {Object} url 自定义的图标
* @param {Object} point 点位置
*/
function addMarker(map, url, point) {
var marker = new plus.maps.Marker(point);
marker.setIcon(url);
map.addOverlay(marker);
return marker;
}
Android还是iOS?
Android
楼上说的对,如果地图都显示不出来,那就是manifest里的appkey没配对。这些三方sdk,他们是要求去他们网站申请key然后在打包时填入。
如果地图可以显示,maker在安卓上异常,但iOS正常。那把代码贴出来,我们重现一下好排查。
“maps”: {
“baidu”: {
“appkey_ios”: “io.dcloud.HXXXXXXX”,
“appkey_android”: “io.dcloud.HXXXXX”,
“appkey”: “XqruwM1Tm4PkdaO4gSGoqqvMPjXXXXX”,
“description”: “百度地图”
}
}
我申请了,填的内容如上。XXXXX为替换内容。
找到原因了,是KEY没设置正确。不过地图上标识与实际地点相差有一公里多。我再找找原因
问题原因分析: 云打包后百度地图marker自定义图标不显示,通常是由于以下两个原因:
- 图标路径问题:云打包时相对路径处理方式与真机调试不同
- 图标未正确打包进APK
解决方案:
- 使用绝对路径(推荐): 将图标放在static目录下,使用绝对路径引用:
iconPath: '/static/your-icon.png'
-
检查图标格式: 确保使用PNG格式,避免使用SVG等可能不兼容的格式
-
检查图标大小: 建议使用48x48或64x64的标准尺寸,过大图标可能导致显示问题
-
云打包配置检查: 在manifest.json中确认已包含相关静态资源:
"app-plus": {
"modules": {
"Maps": {}
}
}