Bluetooth Low Energy Advent Calendar 2015 12/24 tvOSでCoreBluetoothを使用する
tvOSでは従来のiOSに存在するフレームワークから多くのものが削られていますが、CoreBluetoothは残されていました。
ただし、従来のiOSで実装されていたすべての機能が使えるわけではありません。確認できた中では、以下の制限が加わっています。
- CBCentralManagerは使えるが、CBPeripheralManagerを使うことはできない。
- 同時に接続できるPeripheralは2台以下に制限される。
- Background-Runnning状態でCoreBluetoothを使うことはできない。
この制限の下であれば、既存のCoreBluetoothのコードを生かして、Peripheralとのやりとりを行うことができます。 例えば、定番のハートレートモニターに接続することもできますし、iPhoneやiPad上でCBPeripheralManagerを使用すれば tvOS <-> iPhoneの通信も可能です。アクセストークンを渡して認証に使用したり、続きをiPhoneで見る、のようなこともできそうです。
参考資料 https://speakerdeck.com/nolili/tvoswokuo-zhang-suru
ハートレートモニターに接続するサンプルコード https://github.com/nolili/BluetoothExampleTV