mcpField
M
mapbox-navigation-patterns

mapbox-navigation-patterns

github.com/mapbox开发83411 次安装4 周前更新
代码仓库

关于 mapbox-navigation-patterns

面向开发者的 Mapbox 路线与导航实现指导,涵盖 Directions API 和 Navigation SDK。内容按 Web、iOS 和 Android 场景提供 API 选择建议及实现模式。

主要功能

  1. 01Directions API 路线规划
  2. 02逐向导航 SDK 模式
  3. 03交通感知路线指导
  4. 04多站点路线与优化
  5. 05平台专属实现参考

适用场景

  1. 01选择 Directions API 或 Navigation SDK
  2. 02为移动应用添加逐向导航
  3. 03规划包含多个停靠点的路线
  4. 04实现交通感知路线规划

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/mapbox/mapbox-agent-skills --skill mapbox-navigation-patterns

安装后在 Claude Code 中输入/mapbox-navigation-patterns确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

AGENTS.md
evals/
evals.json
references/
android-navigation-sdk.md
android-performance-antipatterns.md
best-practices.md
ios-navigation-sdk.md
ios-navigation-specialized.md
web-directions-api.md

详细介绍

Mapbox 导航模式

使用 Mapbox Directions API 和 Navigation SDK 实现导航和路线规划功能的专家指南。涵盖逐向导航、路线优化、实时交通集成、多站点路线规划和导航 UI 组件。

适用场景

用户提出以下需求时使用:

  • “我需要在应用中实现逐向导航”
  • “如何添加驾车路线指引?”
  • “我想在地图上显示路线”
  • “我需要规划途经多个站点的路线”
  • “如何添加语音导航?”
  • “我想获取实时交通更新”
  • “我需要优化配送路线”

产品概览

Directions API(REST)

**最适合:**Web 应用、简单路线规划、后端路线计算

功能:

  • 路线计算(驾车、步行、骑行、交通)
  • 备选路线
  • 逐向导航指引
  • 多站点路线规划(最多 25 个途经点)
  • 路线优化
  • 实时交通数据
  • 避开特定道路/区域

**定价:**按请求计费

iOS Navigation SDK

**最适合:**需要逐向导航的原生 iOS 应用

**默认方案:**使用 SwiftUI 应用外壳,并通过 UIViewControllerRepresentable 封装即插即用的 NavigationViewController(官方入门路径)。仅当用户明确希望自行构建导航界面时,才使用完全自定义的 Core UI(CoreSDKExample)。

**编码前:**配置 SPM(MapboxNavigationCore + MapboxNavigationUIKit)、MBXAccessToken、位置权限以及后台 audio/location;请参阅安装指南和 iOS 参考检查清单。稳定版 Core/UIKit 不需要 .netrc 下载令牌。

功能:

  • 即插即用的逐向导航 UI(NavigationViewController)——默认方案
  • 可选的完全自定义 Core UI(路线进度/横幅发布者)
  • 语音导航(支持 30 多种语言)
  • 实时重新规划路线
  • 结合交通状况的路线规划
  • 离线地图和路线规划
  • 路线进度跟踪
  • 限速显示

**定价:**按月活跃用户数(MAU)计费

Android Navigation SDK

**最适合:**需要逐向导航的原生 Android 应用

功能:

  • 完整的逐向导航 UI
  • 语音导航(支持 30 多种语言)
  • 实时重新规划路线
  • 结合交通状况的路线规划
  • 离线地图和路线规划
  • 自定义 UI 组件
  • 路线进度跟踪
  • 限速显示

**定价:**按月活跃用户数(MAU)计费

选择指南

在以下情况下选择 Directions API:
  • ✅ Web 应用
  • ✅ 仅显示简单路线(无需逐向导航)
  • ✅ 后端路线计算
  • ✅ 路线规划和优化
  • ✅ 多站点路线规划
  • ✅ 不需要语音导航
在以下情况下选择 Navigation SDK:
  • ✅ 原生移动应用(iOS/Android)
  • ✅ 需要逐向导航
  • ✅ 需要语音导航
  • ✅ 需要导航 UI 组件
  • ✅ 需要离线导航
  • ✅ 需要实时重新规划路线
  • ✅ 正在构建导航/配送应用

实现模式

  • references/web-directions-api.md - Web 端 Directions API 模式:基本路线显示、逐向导航说明、备选路线、多站点路线规划、路线优化,以及基于拥堵情况的路线着色
  • references/ios-navigation-sdk.md - 适用场景:iOS 逐向导航、设置、默认使用 SwiftUI + 封装的 NavigationViewController、选择启用 Core、自带示例目录
  • references/ios-navigation-specialized.md - 适用场景:多站点、路线线条、摄像头、道路摄像头、路线警报,或自定义 NavigationMapView
  • references/android-navigation-sdk.md - Android Navigation SDK:基本逐向导航、自定义导航 UI、路线线条渲染、转向箭头、导航摄像头、语音引导
  • references/android-performance-antipatterns.md - Android Navigation SDK 的性能与正确性反模式:Native Route Object 遍历开销、线程处理、内存/生命周期泄漏、路线管理正确性、高频回调渲染效率,以及 Coordination API 生命周期
  • references/best-practices.md - 路线缓存、错误处理、性能优化、用户体验和常见用例(配送路线规划、网约车预计到达时间、步行/骑行导航)

相关技能

  • mapbox-search-integration:地址搜索与地理编码
  • mapbox-web-performance-patterns:优化导航性能
  • mapbox-ios-patterns:iOS 专用集成模式
  • mapbox-android-patterns:Android 专用集成模式
  • mapbox-token-security:保护访问令牌

资源

快速决策指南

用户说:“我需要导航路线”

  • Web 应用 → 使用 Directions API
  • 移动应用 → 使用 Navigation SDK

用户说:“我需要逐向导航”

  • iOS → iOS Navigation SDK(默认使用 SwiftUI + 封装的 NavigationViewController;只有在用户提出要求时才使用 Core 自定义 UI)
  • Android → Android Navigation SDK
  • Web → 使用 Directions API + 自定义 UI(不支持语音引导)

用户说:“我需要优化配送路线” → 使用 Optimization API(多站点路线优化)

用户说:“我需要实时路况” → 将 driving-traffic 配置文件与 Directions API 或 Navigation SDK 搭配使用

用户说:“我需要语音引导” → 必须使用 Navigation SDK(仅限 iOS/Android)

用户说:“Directions API 还是 Navigation SDK?” → 原生逐向导航/语音 → Navigation SDK(按 MAU 计费)。Web/仅显示路线 → Directions API(按请求计费)。

评论

支持 Markdown