选择正确的 SDK
APP SDK 用于 Android、iOS 手机应用。接入方设计自己的页面、交互与品牌,通过原生接口调用车辆连接、云绑定、商城、门店与支付能力。无限骑行自己的 APP 也通过这套 SDK 接入。
仪表固件、FreeRTOS BSP 和硬件端协议适配请使用独立的硬件 SDK 文档。两个 SDK 分别运行在手机与终端上,不能相互替代。
职责边界
| 层级 | 负责内容 |
|---|---|
| 宿主 APP | 品牌与 UI、隐私同意、系统权限、平台登录流程、地图导航与媒体扩展、支付回跳入口 |
| APP SDK | 原生设备会话、凭据存储、云绑定与恢复、商城与门店请求、购买意图和支付调用 |
| 平台服务 | 账号验证、应用与厂家范围、车辆授权、商品价格与库存、订单和资金状态 |
| 终端与硬件 SDK | 终端身份、近场配对、车辆能力与执行回执 |
SDK 不包含整套可换皮页面。React Native 等跨平台宿主需要建立自己的薄桥接层;公开能力不依赖 JavaScript 运行时。地图、定位和媒体能力需由宿主按扩展接口接入,不能仅凭 SDK 初始化就视为可用。
接入顺序
- 联系平台,登记应用身份、厂家范围和需要启用的服务,获得二进制接入包、API 基址与登录接口约定。
- 按 Android 或 iOS 指南链接 SDK,配置平台注册的
clientId。 - 获取用户隐私同意与必要系统权限;通过平台登录安装原始会话。
- 先恢复未完成的业务,再拉取车辆列表。按车辆绑定与恢复建立连接。
- 根据当前车辆或固定厂家展示商城与门店,在用户明确操作时下单和支付。
生命周期
一个进程配置一次;只维护一个设备客户端和一辆当前车辆。公开设备、账号与云客户端入口在主线程调用,回调回到主线程。不要阻塞主线程等待云请求结果。
云客户端捕获创建时的账号和 token;登录刷新或切换账号后取消旧操作,等待回调结束,再创建新客户端。界面返回、取消或系统弹窗不等同于业务回滚。已经被服务端或终端确认的结果需要通过恢复接口收敛。
SDK 0.2.1 的车辆缓存与云恢复记录按 API 基址、clientId 和账号隔离。终端连接凭据仍按账号/终端保存,测试与正式环境继续使用独立安装身份与存储。旧版待处理记录需核实来源后迁移,见账号与厂家范围。
交付与能力边界
Android 交付 AAR 与 Maven 元数据,iOS 交付静态 XCFramework;公开头文件、原生示例与 contracts/commerce.d.ts 随包提供。保留随包的第三方许可说明。
厂家范围由服务端约束。clientId 是公开应用标识,不是密码;当前版本不包含合作方账号换票或应用真实性证明。能力是否可用还取决于平台注册、终端适配、手机权限及支付供应商配置,详见账号与厂家范围和发布检查。
