用途:帮助开发者构建 Homey 智能家居平台应用。Homey 应用是运行在 Homey Pro 本地或 Homey Cloud 云端的 Node.js 包,可添加设备、Flow 卡片、组件等。
主要能力:使用 Homey Apps SDK v3(清单中 sdk 为 3,全面采用 async/await);自 Homey v12.9.0 起各平台运行 Node.js 22;采用 Homey Compose 构建系统,将单一 app.json 拆分为多个 *.compose.json 文件。核心类包括 Homey.App(app.js,启动时实例化一次)、Homey.Driver(drivers/<id>/driver.js,管理配对与设备实例)、Homey.Device(drivers/<id>/device.js,表示单个已配对设备)。
使用方式:通过 Homey CLI(npx homey)开发,常用命令有 homey app create、homey app run、homey app install、homey app publish、homey app driver create、homey app flow create、homey app validate。推荐流程:先判断集成类型(局域网设备、云 API 或 Z-Wave/Zigbee/433MHz/BLE/IR/Matter 等无线协议),再阅读对应参考文件,按 Compose 结构搭建项目,使用 SDK v3 编写代码,最后用 homey app validate --level=publish 校验。应用 ID 需采用反向域名格式,且不得包含 homey 或 athom。
限制与注意:不要直接编辑生成的 /app.json;不要覆盖 App、Driver、Device 的构造函数,应使用 onInit();定时器须用 this.homey.setInterval/setTimeout 以便销毁时自动清理;设备数据须唯一且不可变(用 MAC 或序列号,不用 IP);须处理 Promise 拒绝,否则会导致云端应用崩溃。面向 Homey Cloud 时不支持本地 Wi-Fi 发现、App Web API、应用间通信及 homey:manager:api 权限,并需处理多租户。环境变量定义于 /env.json,通过 Homey.env 读取。官方文档见 https://apps.developer.homey.app/ 与 https://apps-sdk-v3.developer.homey.app/。