1.HomeKit特點(diǎn)及相關(guān)概念
蘋果公司推出的智能家居解決方案枕稀,以蘋果設(shè)備為控制中心潜支,在iOS設(shè)備上的HomeKit Database桐磁,通過(guò)實(shí)現(xiàn)HomeKit Accessory Protocol(HAP)惫叛,控制智能配件
特點(diǎn):
- 脫離某個(gè)單獨(dú)的App,從設(shè)備底層開(kāi)始架構(gòu),在iOS設(shè)備上的體驗(yàn)更有保證
- 使用“Home”离赫,中文叫“家庭”坚踩,這個(gè)App可代替App控制部分功能
- 接入了Apple ID帳號(hào)墓阀,隱私保護(hù)上比自己做好毡惜,可以邀請(qǐng)其他Apple ID來(lái)控制配件
- App端定義了多個(gè)場(chǎng)景及邏輯,Home家斯撮、Room房間经伙、Scene場(chǎng)景、*Zone區(qū)域勿锅、Accessory配件帕膜、Service服務(wù)
Home Layout
*Zone區(qū)域,是一個(gè) 家 里任意可選 房間 組成的分組溢十,例如樓上樓下包含的若干房間等
- 定義了橋接口垮刹,可以兼容不支持HAP的RF配件,例如张弛,攝像頭實(shí)現(xiàn)HAP后荒典,把攝像頭做為橋接口,把PIR吞鸭、遙控器寺董、智能門鎖、智能插頭等攝像機(jī)配件做為Service和Characteristic添加到HomeKit Database中
- 配件的功能被定義成兩種: 服務(wù)(Service) 和 特性(Characteristic) 刻剥,一個(gè)配件可以有多個(gè) 服務(wù)遮咖,一個(gè) 服務(wù) 可以包含多個(gè) 特性(Charateristic),以官方文檔中的例子造虏,如一個(gè)車庫(kù)開(kāi)門器可能包含車庫(kù)開(kāi)門服務(wù)御吞,也可能有照明服務(wù),其中車庫(kù)開(kāi)門服務(wù)包含開(kāi)關(guān)特性漓藕、開(kāi)關(guān)檢測(cè)特性魄藕,照明服務(wù)包含開(kāi)關(guān)特性、亮度特性撵术、甚至色溫、飽和度等特性话瞧,其中蘋果定義了一些類別(Catalog)的服務(wù)和特性嫩与,可以通過(guò)Siri快速執(zhí)行,如“打開(kāi)客廳燈”等
- 價(jià)格昂貴交排,因?yàn)橄拗屏薸OS設(shè)備划滋,加上MFi認(rèn)證等原因
已有類似的產(chǎn)品:D-Link Omna 180 Cam HD 攝像頭
概念:
-
HomeKit Database,每個(gè)Home都有一個(gè)HomeKit數(shù)據(jù)庫(kù)埃篓,讓使用者可以輕松的訪問(wèn)到配件处坪,忽略設(shè)備間的切換,不同設(shè)備的同一用戶使用網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)庫(kù)同步,HomeKit Database的同步由設(shè)備保證同窘,被邀請(qǐng)的客人也可以被賦予受限制的訪問(wèn)權(quán)限玄帕,App需要自己設(shè)置HomeKit的觀察者以保證數(shù)據(jù)更新變化
HomeKit Databse HomeKit Accessory Simulator(HomeKit配件模擬器),蘋果官方出品的模擬器想邦,可以方便的模擬實(shí)現(xiàn)了HAP協(xié)議的配件裤纹,除了可以模擬官方定義的配件類型以外,也可以進(jìn)行配件的自定義丧没,但是自定義的結(jié)構(gòu)受HAP協(xié)議限制
-
HomeKit Accessory Protocol(HAP)鹰椒,蘋果官方定義的配件協(xié)議,實(shí)現(xiàn)該協(xié)議可以與蘋果公司旗下的iOS呕童,tvOS漆际,watchOS設(shè)備進(jìn)行通信,詳細(xì)的定義了配件需要實(shí)現(xiàn)的協(xié)議內(nèi)容
配件協(xié)議定義舉例-偽代碼
2.怎么玩
App端
iOS設(shè)備夺饲,App需要集成HomeKit奸汇,或者使用iOS系統(tǒng)自帶的“Home(家庭)”來(lái)控制智能配件,以最新的HomeKit為準(zhǔn)钞支,HomeKit支持多種場(chǎng)景:Home家茫蛹、Room房間、Scene場(chǎng)景烁挟、Zone分區(qū)等婴洼,對(duì)應(yīng)的信息都存儲(chǔ)在HomtKit DataBase中,由iOS設(shè)備保存撼嗓,使用App限制在同一個(gè)網(wǎng)絡(luò)下或者藍(lán)牙直連的配件才可控制柬采,如果在信號(hào)范圍外,則需要使用支持HAP的設(shè)備進(jìn)行中繼且警,也可以使用HAP通過(guò)iCloud進(jìn)行中繼粉捻,中繼的場(chǎng)景在外出時(shí)依然有效,但要確保有可以中繼的設(shè)備斑芜,目前官方明確說(shuō)明的肩刃,支持中繼的設(shè)備有:Apple TV 3代、Apple TV 4代杏头、iPad(無(wú)法通過(guò)Apple TV3代訪問(wèn)攝像頭配件)盈包,以上三者都需要登錄iCloud,配件制造商可以在接入HomeKit后可以在自家App實(shí)現(xiàn)更高級(jí)的功能醇王,如通過(guò)自定義的Service和Characteristic實(shí)現(xiàn)蘋果未定義的功能Accessory端
配件想要接入HomtKit呢燥,需要實(shí)現(xiàn)HomeKit Accessory Protocol,總共有三種方式鏈接:
1 . Bluetooth LE配件
2 . IP配件
3 . RF射頻配件寓娩,RF射頻配件只能通過(guò)橋接的方式被識(shí)別叛氨,作為橋接的設(shè)備必須是IP配件呼渣,因?yàn)镽F配件不能被iOS設(shè)備直接識(shí)別,所以只能通過(guò)這種方式來(lái)玩寞埠。
如果使用了橋接方式屁置,則不需要對(duì)配件進(jìn)行MFi認(rèn)證,添加的方式由制造商來(lái)決定畸裳,但是支持的功能可能會(huì)受限制缰犁,但是作為橋接的設(shè)備還是需要認(rèn)證;而進(jìn)行了MFi認(rèn)證的配件怖糊,可以有兩種添加方式帅容,通過(guò)“Home”App,可以選擇掃描Setup Code或者靠近配件感應(yīng)(NFC)添加
3.實(shí)現(xiàn)評(píng)估
-
Accessory端伍伤,根據(jù)以上介紹并徘,配件實(shí)現(xiàn)的三種方式如上,結(jié)構(gòu)圖如下扰魂,RF射頻配件需要橋接麦乞,而且作為橋接的設(shè)備必須是IP配件
HomeKit Accessory Protocol Layers
必須實(shí)現(xiàn)HomtKit Accessory Protocols(HAP),支持兩種傳輸方式:Bluetooth LE和IP劝评,具體實(shí)現(xiàn)可以下載HomeKit Accessory Protocols(HAP)參考——(必須用戶開(kāi)發(fā)者帳號(hào)才可下載)查看姐直,該文件是非商業(yè)版,注冊(cè)MFi認(rèn)證后可以獲取更多資料蒋畜,也可以跟蘋果公司聯(lián)系以獲取工程師的幫助声畏。
-
App端
使用HomeKit Framework,實(shí)現(xiàn)了底層配件管理姻成,數(shù)據(jù)傳輸交互等插龄,開(kāi)發(fā)者可以輕松實(shí)現(xiàn),使開(kāi)發(fā)者能專注界面更新和業(yè)務(wù)邏輯科展,用戶可以參考HomeKit開(kāi)發(fā)者手冊(cè)
總結(jié)
HomeKit降低了智能家居的門檻均牢,使開(kāi)發(fā)者可以脫離繁雜的底層傳輸管理邏輯,專注頂層的場(chǎng)景才睹、配件及功能的實(shí)現(xiàn)徘跪,但是因?yàn)榘踩陨系囊螅档土碎_(kāi)發(fā)者可自定義的范圍琅攘,好在配合上iOS系統(tǒng)的完美支持真椿,還是很誘人的。
鏈接
- HomeKit Developer Guide(HomeKit開(kāi)發(fā)者手冊(cè))
- 開(kāi)發(fā)者中心-HomeKit主題
- HomtKit Catalog(HomeKit Demo Version 2.2, 2016-09-13,乎澄,更新到Swift 2.3)——目前只有Swift版,且因?yàn)镾wift版本不兼容测摔,必須使用Xcode8才能使用置济,我使用的是Xcode 9解恰,時(shí)間有限所以并沒(méi)有成功運(yùn)行該程序
- WWDC2014: Introducing HomeKit--視頻下面的Related Video中可以查看其他HomeKit的視頻
- iOS Security-包含HomeKit安全相關(guān)