2017-06-02 100 views
1

到目前爲止,我已經實現了一個應用程序,我可以創建HMActionSets,並將它們添加到HomeKit中,並且它們也可以執行(在Accessory Simulator中值相應更改)。不過,我面臨着一個奇怪的問題:每當我叫isExecuting on HMActionSets always false

func executeActionSet(HMActionSet, completionHandler: (Error?) -> Void) 

(我回來沒有錯誤,並且actionset已實際執行)。不過,後來我回去通過我HMHome.actionSets陣列再看看,並檢查

isExecuting 

屬性 - >但後來它始終是false

你知道我可能會做錯什麼嗎?

回答

0

不幸的是,我不明白爲什麼這個屬性總是錯誤的。 但是,如果您想知道場景是否正在執行,我發現了一種解決方法:

只需檢查HMActionSet的所有HMActions,檢查HMAction的targetValue是否與相關特性的當前值,並且只有當所有指定的特性和值都相同時,纔可以說:HMActionSet XYZ正在執行。顯然,官方的Home App也是這樣做的。 (在AppleKit開發者論壇上找到)