更新记录

1.0.1(2026-07-15)

测试

1.0.0(2026-07-15)

  • 首版发布。
  • 支持 Android、iOS 应用内开启高德语音导航,无需跳转高德地图 App。
  • 支持驾车(drive)、骑行(ride)、步行(walk)三种出行方式。
  • 提供 startNavigation 快速开启、planRoutes 路径规划、startRouteNavigation 按规划路径导航。
  • 实时语音播报由高德导航 SDK 负责,应用内完成全程导航。
  • 注意:请在高德开放平台分别为 Android、iOS 应用申请对应平台的 Key,两平台 Key 不可混用。

平台兼容性

uni-app(5.07)

Vue2 Vue2插件版本 Vue3 Vue3插件版本 Chrome Safari app-vue app-nvue Android iOS 鸿蒙
√ 1.0.1 √ 1.0.1 - - - - 5.0 12 ×
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 小红书小程序 快应用-华为 快应用-联盟
× × × × × × × × × × × ×

uni-app x(5.07)

Chrome Safari Android iOS 鸿蒙 微信小程序
× × 5.0 12 × ×

其他

多语言 暗黑模式 宽屏模式 蒸汽模式
× × × √

amap-navigation

在 uni-app / uni-app x 的 Android、iOS 应用内部集成高德地图语音导航,支持驾车、骑行、步行三种出行方式,路径规划与实时语音播报全部在当前 App 内完成,不需要跳转高德地图 App。

特性

  • 应用内全屏导航界面(Android 通过 AMapNaviPage 内置导航页,iOS 内嵌 AMapNaviDriveView/WalkView/RideView)
  • 三种出行方式:drive(驾车,默认)、ride(骑行)、walk(步行)
  • 路径规划:planRoutes 返回可选路线,startRouteNavigation 可按指定 routeId 启动导航
  • 实时语音播报由高德导航 SDK 负责
  • 支持自定义起点名称、终点名称、坐标类型(GCJ-02 / WGS-84)
  • 支持 uni-app Vue2、Vue3 以及 uni-app x

准备工作

  1. 在 高德开放平台 分别为 Android 和 iOS 创建应用并申请 Key:
    • Android Key:包名 + 签名 SHA1
    • iOS Key:Bundle Identifier
    • 两平台的 Key 不可混用
  2. 申请的 Key 通过调用方传入 apiKey 参数,本插件不在内部硬编码 Key。

安装

在 HBuilderX 中将本插件放入项目的 uni_modules/amap-navigation 目录,或在 DCloud 插件市场安装。

使用

import { startNavigation } from '@/uni_modules/amap-navigation'

startNavigation({
  apiKey: '当前平台的高德导航 SDK Key',
  latitude: 31.230416,
  longitude: 121.473701,
  name: '人民广场',
  travelMode: 'drive', // drive 驾车(默认),ride 骑行,walk 步行
  success: (res) => console.log('导航已开始', res),
  fail: (err) => console.error('导航失败', err)
})

路径规划

import { planRoutes, startRouteNavigation } from '@/uni_modules/amap-navigation'

planRoutes({
  apiKey,
  start: { latitude: 31.230416, longitude: 121.473701 },
  end:   { latitude: 31.239045, longitude: 121.494512 },
  travelMode: 'drive',
  success: (routes) => {
    // routes: PlannedRoute[],每条含 routeId, distance, duration, points
    const route = routes[0]
    startRouteNavigation({
      apiKey,
      routeId: route.routeId,
      end: { latitude: route.points[route.points.length - 1].latitude, longitude: route.points[route.points.length - 1].longitude },
      travelMode: 'drive'
    })
  },
  fail: (err) => console.error(err)
})

API

方法 说明
startNavigation(options) 直接按传入的目的地启动导航
planRoutes(options) 路径规划,返回 1~N 条可用路线(驾车支持多路线,步行/骑行按 SDK 能力返回)
startRouteNavigation(options) 按 planRoutes 返回的 routeId 启动导航

startNavigation Options

参数 类型 默认值 说明
apiKey string — 当前平台的高德导航 SDK Key
latitude number — 目的地纬度
longitude number — 目的地经度
name string '' 目的地名称
travelMode 'drive' / 'ride' / 'walk' 'drive' 出行方式
coordinateType 'gcj02' / 'wgs84' 'gcj02' 坐标类型
showTrafficLights boolean true 是否显示路线上的交通信号灯(Android AMapNaviView)
strategy number RouteStrategy.DRIVING_DEFAULT 驾车路径策略(仅 drive 时生效),参考高德 RouteStrategy 常量

出行方式支持

平台 驾车 骑行 步行
Android 支持 支持 支持
iOS 支持 支持 支持

权限

  • 安卓:INTERNET、ACCESS_FINE_LOCATION、ACCESS_COARSE_LOCATION、ACCESS_NETWORK_STATE、ACCESS_WIFI_STATE、WAKE_LOCK
  • iOS:在使用期间获取定位、始终获取定位、运动与健身(用于改善驾车精度)、后台定位 + 音频播放(持续后台导航)

注意事项

  • 坐标默认按 GCJ-02(高德坐标)处理;如使用 WGS-84 需显式设置 coordinateType: 'wgs84'。
  • 真机首次打基座时请按照高德 SDK 版本编译通过一次;本插件当前集成版本见各平台 config.json。
  • iOS 内嵌视图会覆盖到当前 keyWindow 上方,导航结束自动移除。

隐私、权限声明

1. 本插件需要申请的系统权限列表:

需要网络、前台定位、设备震动;持续后台导航时需要后台定位、音频后台能力(iOS)。

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

将当前定位和调用方传入的目的地坐标、地点名称交给高德导航 SDK 用于路径规划与语音播报。插件本身不上传、不存储位置数据。

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

无

暂无用户评论。