iOS×BLE Core Bluetoothプログラミング
堤 修一、松村 礼央
BLEを使ったiOSアプリ開発のすべてを1冊に凝縮!!
- 定価
- 4,400円(本体価格 4,000円)
- 発売日
- 2015年3月26日
- 判型/ページ数
- B5変形/480ページ
- ISBN
- 978-4-88337-973-6
- 備考
- -
SOLD OUT
本書は、Core Bluetoothを使ったBLEのアプリ開発プログラミングの解説書です。BLEの仕様の詳細な解説から実際のアプリ開発手法、はまりやすい点の解説までをわかりやすく解説します。
・まえがき
・本書の読み方
◎Part1. BLE編
1. はじめに
2. BLEをとりあえず体験する
2-1. konashiでBLEを体験する
2-2. 初級編:konashiをとりあえず体験する
2-3. 中級編:konashiをiOS-SDKを利用して制御する
3. BLEを理解する
3-1. BLEの概要
3-2. BLEの構造
3-3. BLEのネットワークトポロジー
3-4. BLEでのネットワークと通信の制御
3-5. L2CAP(Logical Link Control and Adaption Protocol)によるパケットの制御
3-6. BLEのパケットフォーマット
3-7. LL層における通信のやり取り
3-8. GAP(Generic Access Profile)の詳細を知る
3-9. ATT(Attribute Protocol)とGATT(Generic Attribute Profile)の詳細を知る
3-10. GATTとService
3-11. iOSエンジニアのBLEあんちょこ
◎Part2. iOSプログラミング編
4. Core Bluetooth入門
4-1. 周辺のBLEデバイスを検索する
4-2. BLEデバイスに接続する
4-3. 接続したBLEデバイスのサービス・キャラクタリスティックを検索する
4-4. 接続したBLEデバイスからデータを読み出す(Read)
4-5. 接続したBLEデバイスへデータを書き込む(Write)
4-6. 接続したBLEデバイスからデータの更新通知を受け取る(Notify)
5. ペリフェラルの実装
5-1. セントラルから発見されるようにする(アドバタイズの開始)
5-2. サービスを追加する
5-3. サービスをアドバタイズする
5-4. セントラルからのReadリクエストに応答する
5-5. セントラルからのWriteリクエストに応答する
5-6. セントラルへデータの更新を通知する(Notify)
6. 電力消費量、パフォーマンスの改善
6-1. スキャンの最適化
6-2. ペリフェラルとの通信の最適化
6-3. ペリフェラルとの接続の最適化
6-4. イベントディスパッチ用のキューを変更する(セントラル)
6-5. アドバタイズの最適化
6-6. イベントディスパッチ用のキューを変更する(ペリフェラル)
7. バックグラウンド実行モード
7-1. バックグラウンド実行モードへの対応方法
7-2. バックグラウンド実行モードの挙動
7-3. アプリが停止しても、代わりにタスクを実行するようシステムに要求する(状態の保存と復元)
7-4. バックグラウンド実行モードを使用せず、バックグラウンドでのイベント発生をアラート表示する
8. Core Bluetoothその他の機能
8-1. ペリフェラルに再接続する
8-2. Bluetoothがオフの場合にユーザーにアラートを表示する
8-3. UUID 詳解
8-4. アドバタイズメントデータ詳解
8-5. CBPeripheralのnameが示す「デバイス名」について
8-6. 静的な値を持つキャラクタリスティック
8-7. サービスに他のサービスを組み込む~「プライマリサービス」と「セカンダリサービス」
8-8. サービスの変更を検知する
9. Core Bluetooth以外のBLE関連機能
9-1. iOSの電話着信やメール受信の通知を外部デバイスから取得する(ANCS)
9-2. iBeaconとBLE
9-3. MIDI 信号をBLEで送受信する(MIDI over Bluetooth LE)
9-4. BLEが利用可能なiOSデバイスのみインストールできるようにする
10. 開発ツール・ユーティリティ
10-1. 128ビットUUIDを生成するコマンド「uuidgen」
10-2. 開発に便利なiOSアプリ「LightBlue」
10-3. Apple 製開発用ツール「Bluetooth Explorer」
10-4. 「PacketLogger」でBLEのパケットを見る
11. ハマりどころ逆引き辞典
トラブル1:スキャンに失敗する
トラブル2:接続に失敗する
トラブル3:サービスまたはキャラクタリスティックが見つからない
トラブル4:Writeで失敗する
トラブル5:キャラクタリスティックの値がおかしい
トラブル6:バックグラウンドでのスキャンが動作しない
トラブル7:バックグラウンドのペリフェラルが見つからない
トラブル8:セントラルの「状態の保存と復元」に失敗する
トラブル9:ペリフェラルの「状態の保存と復元」に失敗する
トラブル10:iBeaconが見つからない
12. BLEを使用するiOSアプリ レシピ集
レシピ1:心拍数モニタアプリ
レシピ2:活動量計デバイスとアプリ
レシピ3:ジェスチャ認識ウェアラブルデバイス&アプリ
レシピ4:すれちがい通信アプリ
・Appendix. BLEを使ったサービスを開発するということ
・索引
ダウンロードデータ
本書で解説したサンプルデータをダウンロードできます。
なお、使用方法などに関しては、必ず書籍の該当箇所をご確認の上、ご利用ください。
ダウンロード後、解凍したファイル内に「readme.txt」ファイルなどが含まれる場合は、使用前にこちらもご確認ください。
- Swift 2.2 / Xcode 7.3 対応
(約6.6MB。zip形式で圧縮してありますので、ダウンロード後解凍してください) - Swift 2 / Xcode 7 対応
(約4.7MB。zip形式で圧縮してありますので、ダウンロード後解凍してください) - Swift 1.2 / Xcode 6.3 対応
(約6.6MB。zip形式で圧縮してありますので、ダウンロード後解凍してください)
正誤情報
初版第1刷に誤りがありました。
初版の正誤表と修正を反映した本文のページのPDFファイルがダウンロードできます。図版の修正についてはPDFをご確認いただきますと幸いです。ダウンロードされる方は下記のURLをクリックしてください。
お問い合わせ
本書に関するお問い合わせは、下記のボタンをクリックしてお問い合わせフォームよりお問い合わせください。