当前位置:首页 > uni-app

uniapp 分享位置

2026-02-06 04:28:06uni-app

uniapp 分享位置实现方法

在 uniapp 中实现分享位置功能,通常需要调用微信小程序、H5 或 App 的原生 API。以下是不同平台的实现方式:

微信小程序平台

使用 wx.openLocation API 打开微信内置地图,并显示指定位置:

uniapp 分享位置

uni.openLocation({
  latitude: 39.90469, // 纬度
  longitude: 116.40717, // 经度
  name: '北京市', // 位置名称
  address: '北京市东城区', // 详细地址
  success: function () {
    console.log('打开位置成功');
  }
});

H5 平台

通过 window.open 调用第三方地图服务(如高德、百度地图):

uniapp 分享位置

// 高德地图
window.open(`https://uri.amap.com/marker?position=116.40717,39.90469&name=北京市`);

// 百度地图
window.open(`https://api.map.baidu.com/marker?location=39.90469,116.40717&title=北京市&output=html`);

App 平台

使用原生地图插件或调用系统地图:

// 使用 uni-app 官方地图插件
plus.maps.openSysMap({
  latitude: 39.90469,
  longitude: 116.40717,
  name: '北京市',
  address: '北京市东城区'
});

跨平台兼容方案

通过条件编译实现多平台兼容:

// #ifdef MP-WEIXIN
wx.openLocation({
  latitude: 39.90469,
  longitude: 116.40717,
  name: '北京市',
  address: '北京市东城区'
});
// #endif

// #ifdef H5
window.open(`https://uri.amap.com/marker?position=116.40717,39.90469&name=北京市`);
// #endif

// #ifdef APP-PLUS
plus.maps.openSysMap({
  latitude: 39.90469,
  longitude: 116.40717,
  name: '北京市',
  address: '北京市东城区'
});
// #endif

注意事项

  • 微信小程序需要先调用 wx.getLocation 获取用户授权
  • App 端可能需要配置原生地图插件
  • H5 端需要确保域名在白名单内
  • 各平台对坐标系的处理可能不同(如微信使用 GCJ-02)

标签: 位置uniapp
分享给朋友:

相关文章

uniapp极光推送

uniapp极光推送

uniapp极光推送集成步骤 准备工作 注册极光推送开发者账号,创建应用获取AppKey。确保uniapp项目已配置好原生插件支持。 安装插件 在uniapp项目manifest.json文件中,选…

uniapp关闭侧滑

uniapp关闭侧滑

禁用全局侧滑返回功能 在pages.json中配置全局禁止侧滑返回: { "globalStyle": { "popGesture": "none" } } 禁用单个页面侧滑…

uniapp使用axios无法请求

uniapp使用axios无法请求

uniapp中使用axios请求问题解决方案 在uniapp中使用axios可能会遇到跨域、请求失败或兼容性问题。以下是常见原因及解决方法: 检查axios安装与引入 确保已正确安装axios:…

uniapp 数据

uniapp 数据

uniapp 数据管理方法 本地存储 使用 uni.setStorageSync 和 uni.getStorageSync 进行本地数据持久化存储。适合保存用户偏好设置或小型数据。 // 存储数…

混合uniapp

混合uniapp

混合 UniApp 开发模式 混合 UniApp 开发通常指将 UniApp 与其他原生技术(如原生 iOS/Android 或 Flutter)结合使用,以兼顾跨平台效率和原生性能。以下是常见的混合…

uniapp关闭广告

uniapp关闭广告

关闭广告的方法 在UniApp中关闭广告通常涉及以下几个方法,具体操作取决于广告的类型和集成方式。 移除广告模块 检查项目中是否集成了广告SDK或相关组件,如ad、ad-draw等。在pages.j…