跳转至

接入方式选择

最后更新:

先确定代码运行在哪里、是否需要独立 App、是否需要远端通信,再选择接入方式。

快速判断

  1. 正在开发车机上的第三方 Android App:使用 EVCC 开放 API。
  2. 逻辑直接运行在 EVCC 内,并且需要循环、状态机、HTTP 或存储:使用 Lua。
  3. 希望在 EVCC 界面中配置触发器、条件和动作:使用自动化。
  4. 只需要把属性和变量上报到服务器:使用小程序 MQTT。
  5. 已有客户端依赖米德宝/AIDL v1 或 v2:继续使用兼容接口,新项目不要从它开始。
  6. 制作规则、模板、脚本、皮肤或 MIBO 资源:进入内容扩展。

方式对比

项目 开放 API Lua 自动化/公式 小程序 MQTT 兼容 AIDL
主要使用者 Android 开发者 脚本开发者 普通用户与低代码开发者 服务端开发者 旧客户端维护者
运行位置 第三方 App EVCC 内 EVCC 内 EVCC 与 Broker 第三方 App
属性读取 支持 支持 支持 上报已配置属性 固定快照
属性监听 支持 支持 触发器 增量上报 回调快照
属性写入 按权限 支持 动作 不支持 v2 受控支持
变量 读、写、监听 读写 公式与动作 只读上报 固定快照
生命周期 SDK 与 EVCC 管理 EVCC 管理 EVCC 管理 EVCC 管理连接 客户端自行重绑
推荐状态 新 App 首选 内嵌复杂逻辑首选 普通联动首选 远端只读上报首选 仅兼容维护

可以组合使用

这些方式不是互斥的。例如第三方 App 可以通过开放 API 写入共享变量,由自动化监听变量并执行本地 动作;Lua 也可以维护状态,再让开放 API 读取结果。组合前应明确数据所有者、写入方和断线后的恢复 策略,避免多个链路同时写同一属性。

具体组合方式见Lua、自动化与开放 API 的协作。