uni-app 使用uni.chooseLocation API无法唤起百度地图

uni-app 使用uni.chooseLocation API无法唤起百度地图

操作步骤:

  • 在基座配置完百度地图后,工程使用uni.chooseLocation api即可

预期结果:

  • uni.chooseLocation唤起百度地图

实际结果:

  • uni.chooseLocation唤起高德地图

bug描述:

现在使用uni.chooseLocation 唤起的地图是高德地图,按照百度地图配置教程配置完毕后,唤起的还是高德地图,基座原有高德配置也已清除,还是无法唤起百度地图

信息类别 信息内容
产品分类 uniapp/App
PC开发环境操作系统 Windows
PC开发环境操作系统版本号 win11
手机系统 Android
手机系统版本号 Android 12
手机厂商 小米
手机机型 小米10(任意一款)
页面类型 vue
vue版本 vue2
打包方式 离线
项目创建方式 CLI
CLI版本号 3.4.15

更多关于uni-app 使用uni.chooseLocation API无法唤起百度地图的实战教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于uni-app 使用uni.chooseLocation API无法唤起百度地图的实战教程也可以访问 https://www.itying.com/category-93-b0.html


在 uni-app 中使用 uni.chooseLocation API 时,如果无法唤起百度地图,可能是由于以下几个原因:

1. 平台支持

uni.chooseLocation 是 uni-app 提供的一个用于选择位置的 API,它默认调用的是微信小程序的原生地图选择器。在微信小程序中,uni.chooseLocation 会调用微信内置的地图服务,而不是百度地图。

2. 百度地图的集成

如果你希望在 uni-app 中使用百度地图,你需要手动集成百度地图的 SDK。uni.chooseLocation 本身并不支持直接唤起百度地图。

3. 解决方案

如果你需要在 uni-app 中使用百度地图,可以考虑以下两种方式:

方式一:使用百度地图的 Web SDK

你可以在 uni-app 的页面中嵌入百度地图的 Web SDK,然后通过调用百度地图的 JavaScript API 来实现地图功能。

  1. index.html 中引入百度地图的 JavaScript SDK:

    <script type="text/javascript" src="https://api.map.baidu.com/api?v=3.0&ak=你的AK"></script>
    
  2. 在页面中使用百度地图:

    <template>
      <view>
        <div id="map" style="width: 100%; height: 300px;"></div>
      </view>
    </template>
    
    <script>
    export default {
      mounted() {
        // 初始化地图
        const map = new BMap.Map("map");
        const point = new BMap.Point(116.404, 39.915);
        map.centerAndZoom(point, 15);
      }
    }
    </script>
    

方式二:使用百度地图的原生插件

如果你需要在原生应用中使用百度地图,可以使用 uni-app 的原生插件机制,集成百度地图的原生 SDK。

  1. 在 uni-app 项目中安装百度地图的原生插件:

    • 你可以通过 uni-app 插件市场或其他渠道获取百度地图的原生插件。
    • 安装插件后,按照插件的文档进行配置和使用。
  2. 在代码中调用百度地图的原生 API:

    const bdMap = uni.requireNativePlugin('百度地图插件名称');
    bdMap.openMap({
      latitude: 39.915,
      longitude: 116.404,
      success(res) {
        console.log('打开百度地图成功', res);
      },
      fail(err) {
        console.error('打开百度地图失败', err);
      }
    });
回到顶部