"嘿Siri,关掉楼上的灯"
"嘿Siri,打开车库门"
"嘿Siri,派对时间!"
HomeKit 是苹果连接你所有(兼容的)家庭自动化设备的网关。你可以使用 iOS 设备上的 Home 应用来控制它们,或者像个酷炫的小孩一样,使用新发布的 NativeScript HomeKit 插件构建自己的应用程序。你是一个酷炫的小孩,对吧?
不用担心!只需下载HomeKit 模拟器,它是硬件 IO 工具的一部分,打开下载的模拟器,然后按照此图片所示添加一个新的配件 - 现在你就可以开始构建和玩耍了!
访问插件的 GitHub 仓库,并按照如何在手机上部署演示应用程序的说明进行操作。这是演示应用程序的运行效果
顾名思义,HomeKit 围绕着(一个或多个)家庭展开,所以我们需要从这里开始。让我们使用 TypeScript,因为此插件公开了方便的 TS 包装器类,如 Home、Room、Zone、Accessory 和 Service。
请注意,与您提供给 HomeKit 的任何实体一样,Home 会保存到设备上的 HomeKit 数据库中,并与连接到同一 Apple ID 的其他 iOS 设备共享。
如上面的演示应用程序视频所示,您可以向家庭添加房间。配件(HomeKit 兼容设备)可以添加到家庭或房间中。
您还可以向家庭添加“区域”(楼上、楼下、花园)并将多个房间分配到一个区域。一旦您了解了如何使用房间,它就会变得非常容易 - 阅读插件文档以获取详细信息和代码示例。
要将配件添加到家庭或房间中,我们首先需要“搜索”它们。找到后,我们可以将其分配给家庭。为简洁起见,此处未显示分配到房间的操作。
配件具有服务。车库门开启器可能具有一项服务来实际打开或关闭车库门。服务具有特性(当前门状态)。这两个都可以使用插件进行查询
要进一步与此处显示的任何类(Home、Room、Zone、Accessory、Service 和 Characteristic)进行交互,插件在所有这些类上都公开了 ios 属性。插件文档链接到这些属性所表示的原生类,以便您可以调用应用程序可能需要的任何其他函数。
您是否在插件的分支中添加了其他人可能也认为有用的功能?与往常一样,请提交拉取请求。