Contenu connexe
Similaire à CoreBluetoothでつくるBluetooth Low Energyデバイス
Similaire à CoreBluetoothでつくるBluetooth Low Energyデバイス (20)
CoreBluetoothでつくるBluetooth Low Energyデバイス
- 2. ⾃自⼰己紹介
• 伊勢 シン / 伊藤 伸裕
– @iseebi / id:iseebi
• スマートフォンアプリ作ってます。
– iPhone / Android
– 最近うっかり
iOS Developer Program
失効させるところだった
• 今⽇日もスマートフォンのはなしです。
- 5. 2013年年 スマホ⽅方⾯面で (個⼈人的に) アツそうなもの
• HTML5⽅方⾯面
– 依然注⽬目度度変わらず
• 新しいモバイルOS
– Firefox OS、Ubuntu Phone
• Nexus S や Galaxy Nexus などの
これらOSを”焼ける”端末の価値が急上昇の予感
• 機器連携・近接通信
– プラットフォームを超えた通信
– 組み込み機器の⾃自作
- 6. いままでの近接通信状況
• iOS
– ⾃自由に開放されたAPIがない
– GameKit をつかったらできる。
• 独⾃自プロファイルなので、iOS同⼠士でしか通信できず
• Android
– Bluetooth いけます
– 機種によってはFelicaいけます
• なんか2011年年の夏に1機種だけでたアレ
– 全くダメ
- 7. この1年年くらいで状況かわってきた
• iOS
– iOS 5 から CoreBluetooth で⾃自由に使えるようになった。
iOS 6 でさらに⾃自由度度が上がった
– そのかわり、Bluetooth LEだけしか対応しない。
• Android
– NFC最速対応
– Bluetooth LE対応している機種もちらほら。
⾮非公式SDKで、何機種かはいけそう?
• なんか⽇日本で出る気配のないアレ
– NFCつかえる (AndroidとのURLやりとり確認済み)
– 旧来のBluetoothがいけるようになった
- 8. 新しい規格
• Bluetooth Low Energy (BLE) = Bluetooth 4.0
– これまでのBluetoothよりも省省電⼒力力な設計
• その代わり互換性はないので、ほとんどはデュアルスタックで
実装される
– GATT(General Attribute Profile) ベースの通信
• 機器は複数の Service を提供し、
サービスは複数の Characteristic を提供する
• Indicate, Notify など、通知機能もあり。
• Near Field Communication (NFC)
– おサイフケータイみたいな、「タッチして通信」
– 急速に広がってる
- 9. 何がうれしいの?
• いままでできなかったこんなことができるように!
– iPhone / Android の間でアドレス交換
• Android側の対応がまだ難あり
– iPadで動くアプリのコントローラとして、
Andorid と iPhone両⽅方使える
– バックグラウンド実⾏行行が使えるので、夢が広がる
• Macでも、新しいやつはCoreBluetooth使えるので、
Macからパルス送り続けて、通信続けさせるとか。
(要検証)
- 11. iOSでBLE通信したい
• iOS 5 から⼊入った
CoreBluetooth.framework を使う
– iPhone 4S 以上で使⽤用可能
• バックグラウンド実⾏行行可能!
– 機器からアプリを起こすことができる
(数秒だけ。でもTask Completionも使える)
• NO GUIDE
– まともなドキュメントやサンプルがほぼない。
– WWDC’12のセッションビデオが最⼤大の情報源
• Advanced Core Bluetooth
- 12. BLE通信できた所で機器がない
• iOS 5 の段階で⽤用意されたのは
「機器に対してアクセスする」ものしかなかった
– iOS 5のタイミングでは、そんな機器はなかった。
• 最近になって、ようやくいろいろできるようになって
きた
– Arduino BLEシールド
– konashi
• http://konashi.ux-xu.com/
• 知って4分で注⽂文しました
– 思い通りにやるには電⼦子⼯工作の知識識が必要
- 13. iOS 6 で、iOSデバイスをBLE機器に!
• iOS 6で、CBPeripheralManager が追加!
iOS デバイス上にBLEデバイスを定義可能に
– NO REFERENCE
• リファレンスがないので、
ヘッダファイルのコメントをみながら、⼿手探り。
- 17. その他ポイント 2/2
• iOSデバイスが⾜足りなければ、Macの設定を
変更更してシミュレータで試すことも可能。
– USBのBLE対応アダプタが必須
– TN2295参照
– https://developer.apple.com/library/ios/
#technotes/tn2295/_index.html
• BLExplr はBLE開発必携ツール
– https://itunes.apple.com/jp/app/blexplr/
id524018027?mt=8
- 18. まとめ
• iOS 6 + CoreBluetoothで
CBPeripheralManagerを実装すれば
BLE機器を簡単に作れます。
– いろいろ夢がひろがる!
– 組み込みのBLE機器のモックとしてもどうぞ
• ただしリファレンスがないので、ヘッダをがんばって読む。
– そんなに仕組みは複雑じゃないです。まだがんばれる。
• あなたのアプリに、新たな選択肢を!