HomeKit点滴

Posted 信息学奥赛NOIP辅导

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HomeKit点滴相关的知识,希望对你有一定的参考价值。

最近在研究HomeKit,在更改某个特征值的时候:

当设置了HMAccessoryDelegate的delegate后,在App中,改变HMCharacteristic的特征值时,

- (void)writeValue:(nullable id)value completionHandler:(void (^)(NSError * __nullable error))completion;

代理方法

- (void)accessory:(HMAccessory *)accessory service:(HMService *)service didUpdateValueForCharacteristic:(HMCharacteristic *)characteristic

是不会被触发的。

那么该方法在什么时候被触发呢?当App运行时,特征值被从他的途径修改的时候,比如通过设备的物理开关,才会触发App的改代理方法,目的是App UI与设备保持一致。

详细可参见苹果官方的描述:

Discussion
This method is called as a result of a change in value initiated by the accessory. Programmatic changes initiated by the app do not result in this method being called.

https://developer.apple.com/documentation/homekit/hmaccessorydelegate/1615286-accessory?language=objc

以上是关于HomeKit点滴的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Swift 4 中使用 respondsToSelector 验证来自 HomeKit 的值的方法字节

homekit摄像头无法播放

nas装homekit能关联摄像头吗

HomeKit开发

DT-06 For Homekit

Homekit_Dohome_智能插座