我希望我的应用程序能够感知由HomeKit附件(HMAccessory)触发的事件。这样,当我的HomeKit驱动的运动检测器检测到运动时,我的应用程序就会以某种方式知道这一点(最好是通过推送通知)。预装的Home应用程序似乎具有此功能。有没有一种方法可以使用HomeKit框架来完成这项工作?
我在HMCharacteristic上找到的最近的是这个
func enableNotification(Bool, completionHandler: (Error?) -> Void)但这并不会导致推送通知,而是通过委托回调传递更新(仅当应用程序处于前台时才起作用)。
发布于 2017-12-16 11:57:06
不幸的是,我不得不同意Jeff Z的观点。不可能直接这么做。
根据我的调查,附件事件随后被“发布”为推送通知,当苹果家庭应用程序在iPad、AppleTV和即将推出的HomePods上设置为“家庭中心”模式时,它似乎是一个功能。它只适用于一小部分配件类型,如门、锁和其他一些。(我还在搜索Apple Docs中的明确列表)这些通知是直接发送给Home app的,不会被其他应用程序使用。
如果这是您自己的个人使用,您可以设置一个自定义附件作为服务,在被Home Automation触发时发送推送通知。
有一个Javascript/Node.js项目的homebridge,它实现了家庭附件协议( HAP ),并允许您在家庭网络中建立一个可定制的HAP服务。
一般的方法是:
中设置的推送通知
这将向GetPushed应用程序发送通知。但大体轮廓也适用于其他推送服务,如Firebase Cloud Messaging。
发布于 2017-07-05 03:32:28
我也想这样做,但我不认为有办法做到。
https://stackoverflow.com/questions/43816900
复制相似问题