HomeKitは「HomeKit Accessory Protocolに対応したホームオートメーション機器と通信し、これを制御するためのフレームワーク」です[1]。
具体的には、HomeKitを利用することで、アプリから照明を操作したり、温度センサーやモーションセンサーをトリガとしてさらに別の機器を操作する設定をしたり、といったことが実現できます。
HomeKitを使ったアプリを開発してApp Storeに公開する開発者は多くないかもしれません。他方で、AppleはHomeKitを個人の趣味の範囲で楽しむことも許可しています。2016年まではHomeKit Accessory Protocol[2]は一部メーカーにしか公開されていませんでしたが、2017年からはApple Developerアカウントさえ持っていれば誰でも参照できるようになりました[3]。
自宅やオフィスのオートメーションを実現するための専用アプリを自分で作ることができる、というのは、なんともプログラマ冥利に尽きる体験ではないでしょうか。
本章の構成
まず HomeKit入門 で、HomeKitに具備されている機能と利用方法をソースコードを交えて具体的に解説します。
次に iOS 11でのアップデートまとめ入門 で、iOS 11でアップデートされた内容について一通り紹介します。
最後に HomeKit実践入門 では、HomeKit Accessory Simulatorの利用方法と、実際にHomeKit対応製品を購入して利用した実例を紹介します。
オマケとして HomeKitお役立ちリファレンス実践入門 には、HMService.serviceType一覧 など、役立つ一覧表をAppleのAPIリファレンス+αで掲載しています。
注意
本書は 2017年11月時点に執筆 したもので、iOSやXcode、Swiftもその当時の最新バージョンで動作確認をしたものです。
そのため、現在の環境で変更されている箇所などあるかもしれません。
本書はコストをかけず無料で公開することに重きを置いたため、最新の環境での再確認や改訂などしていないことをご了承ください。
なお、HomeKit FrameworkにはiOS 12以降大きな変更は入っていませんので2020年10月現在でも、本書の内容は有効であるとは考えています。