Apple Watchプログラミングの作法 Extensionアプリ/Objective-C対応

概 要

Apple Watchは、iPhoneやiPadと同様に新しいマーケットを創造することを期待されている最新のデバイスです。本書は、開発者向けにApple Watchが登場した背景やアプリデザインの考え方、プログラムテクニックなどを読者と一緒に考察します。WatchアプリはiPhoneとどう違うのか、画面設計、Objective-Cコード資産を利用する方法など、開発でつまづきやすいポイントをわかりやすくフォローします。解説に使用する言語はObjective-Cです。

著者 橋本佳幸
価格 本体2200円(税別)
ISBN 978-4-7980-4430-9
発売日 2015/7/31
判型 A5
ページ数 272
CD/DVD
ダウンロード
表紙イメージ
購入 アマゾンで購入する
楽天で購入する

※リンク先によっては、販売ページが用意されていないことがあります。あらかじめご了承ください。

新しいウィンドウで開く 書籍購入のご案内

サポート

サポート情報は以下からご参照下さい。

サポート情報へのリンク

目次

第1部 Apple Watchの作法

第1章 Apple Watchとは

1.1 現在のデバイス、Apple Watch登場

1.2 伝統と革新

1.3 人間らしさへの回帰

1.4 iPhoneキラー

1.5 なぜ腕時計なのか

1.6 スピード、スピード、スピード

1.7 流れをつくる

1.8 iPhoneとの協同作業

1.9 なぜネイティブアプリではないのか

1.10 ウォッチ・ファースト

1.11 情報とバランス良くつきあう

第2章 Apple Watchの機能と特徴

2.1 小さなRetinaディスプレイ

2.2 デジタルクラウン(Digital Crown)

2.3 感圧タッチ(Force Touch)と、Tapticエンジン

2.4 心拍センサーと加速度センサー、ジャイロスコープ

2.5 S1チップ

2.6 充電機構

第2部 デザイン編

第3章 Apple Watchインターフェイス

3.1 Apple Watchのテーマ

3.1.1 パーソナル

3.1.2 統一的

3.1.3 軽快

3.2 コンテンツ

3.3 操作の基本

3.3.1 タップ

3.3.2 ジェスチャー

3.3.3 手首を上げる

3.3.4 感圧タッチ(フォースタッチ)

3.3.5 デジタルクラウン

3.4 レイアウト・ガイドライン

3.4.1 画面全体を使う

3.4.2 スクリーンサイズの違いを考慮する

3.5 読みやすい色、フォント

3.6 タイポグラフィー

3.7 アニメーション

3.8 ブランディング

3.9 アイコン

第3部 プログラム編

第4章 簡単なWatchアプリを作ってみよう

4.1 MyTimerアプリ

4.1.1 プロジェクトを作成する

4.1.2 Watchアプリを動かしてみる

4.1.3 Watchアプリの画面を制作する

4.1.4 Watchアプリのプログラムを実装する

4.1.5 プログラムの説明

4.2 ラップタイム

4.2.1 画面を修正する

4.2.2 テーブルを設定する

4.2.3 テーブルセルを設定する

4.2.4 ボタンを切り替える

4.2.5 テーブルの表示

4.2.6 動作を確認する

第5章 Watchアプリの構造と位置付け

5.1 WatchアプリとiOSアプリの関係

5.2 WatchKitアプリとWatchKit Extensionの役割分担

5.3 WatchKitアプリ内にデータは無い

5.4 グランスと通知表示とアプリメイン

5.4.1 グランス(Glance)

5.4.2 通知表示(Notification)

第6章 複数の画面があるアプリ

6.1 画面ナビゲーションの種類

6.1.1 ページベース表示

6.1.2 階層型表示

6.1.3 モーダル表示

6.2 ページベースのサンプル

6.2.1 画面の作成

6.2.2 Interface Controllerクラスの作成

6.2.3 確認プログラムの実装

6.2.4 動的なページ構成

6.3 階層型のサンプル

6.4 ページベースと階層型の混在

第7章 Apple WatchからiPhoneへアクセスする

7.1 Apple Watchを楽器にするピアノ演奏アプリ「Fun Piano」

7.1.1 イメージアセットへの画像登録

7.1.2 ボタンをレイアウトする

7.1.3 Apple Watch画面サイズ毎の調整

7.1.4 アクションメソッドの設定

7.1.5 Apple WatchからiPhoneへのコマンド送信

7.1.6 音を鳴らす

7.1.7 より使いやすい楽器を目指して

7.2 Apple WatchからiPhoneへ記録する行動トラッキングアプリ「WatchLog」

7.2.1 アプリの構造

7.2.2 Apple Watch側の画面作成

7.2.3 InterfaceControllerのコーディング

7.2.4 iPhone側の画面作成

7.2.5 AppDelegateのコーディング

7.2.6 TableView動作のコーディング

7.2.7 動かしてみる

7.3 WatchアプリとiPhoneアプリをデバッグする

第8章 iPhoneからApple Watchへアクセスする

8.1 iPhoneからApple Watchへの情報伝達

8.2 iPhoneからApple Watchへ情報伝達を仕掛ける

8.3 通知にパラメータを乗せる

8.4 画面の作成

8.5 WatchKit ExtensionからiPhoneへの流れをコーディング

8.6 iPhoneからWatchKit Extensionへの流れをコーディング

8.7 動かしてみる

第9章 Apple WatchとiPhoneでデータを共有する

9.1 共有の仕組み(App Group)

9.2 App Groupの利用

9.2.1 App Groupを設定する

9.2.2 共有コンテナ管理クラス ShareData

9.3 サンプルアプリの説明

9.3.1 画面の作成

9.3.2 iPhone側のコーディング

9.3.3 Apple Watch側のコーディング

9.4 Apple Watch設定バンドル

9.4.1 設定バンドルの追加

9.4.2 設定バンドルの編集

9.4.3 設定値を利用する

9.5 watchOSとiOSの連携の目的を考える

第10章 位置情報を利用する(CoreLocation/MapKit)

10.1 現在地をApple Watchに表示する

10.2 画面の作成

10.3 位置情報をバックグラウンド取得する準備

10.4 位置情報の利用許可を受ける

10.5 コーディング

10.5.1 初期化部分

10.5.2 画面の表示開始

10.5.3 位置情報の取得

10.5.4 地図画面の更新

10.5.5 位置情報の利用承認メッセージ

10.6 シミュレータで動作確認

10.7 地図画像の転送量を少なくする

10.8 画像を使って進行方向を表示する

10.8.1 WatchKit Extension内の画像を利用する

10.8.2 画像キャッシュを利用して転送量を少なくする

10.8.3 WatchKitアプリ内の固定画像を利用する

10.8.4 画像データの3種類の利用形態

第11章 メニュー

11.1 メニューを追加する

11.1.1 Interface ControllerにMenuアイテムを追加

11.1.2 コーディング

11.2 可変メニューにする

第12章 グランス(Glance)

12.1 グランス画面を追加する

12.1.1 プロジェクト生成時にグランスを追加しておく方法

12.1.2 あとからグランスを追加する方法

12.2 現在地をグランスに表示する

12.2.1 テンプレートを選択して画面を作成

12.2.2 コーディング

12.3 Glanceエントリーポイント用のスキーム

12.4 アプリメインの起動時に情報を渡す

12.4.1 Handoff(ハンドオフ)の仕組みで情報を受け渡す

12.4.2 プログラムコードの修正

第13章 通知表示(Notification)

13.1 ミーティングへの参加を問い合わせるアプリ「NotifyMe」

13.2 プロジェクトの作成

13.3 メソッドが呼ばれる順番

13.4 通知される内容

13.5 動的ロングルックを実装する

13.6 別の通知グループを追加する

13.6.1 新しいカテゴリの通知画面を追加する

13.6.2 コーディング

13.7 新しい通知カテゴリ用のペイロードデータ

13.8 通知グループ別のスキーム追加

13.9 カテゴリ別に通知画面を起動する

13.10 アプリメインで結果を判別する

13.11 Apple Watch実機での動作確認が必要

第14章 ベータ版のアドホック配布(参考情報)

14.1 テストデバイスのUDIDを収集する

14.2 配布用のファイルをビルドする

14.3 配布用ウェブサイトを準備する

巻末コラム Extensionとネイティブアプリ

1 watchOS2の特徴

2 watchOS2でのネイティブアプリの構造

3 ネイティブのパフォーマンス予測

4 各種条件によるアプリの比較

5 これからのWatchアプリをどう作っていくか

6 Extensionアプリでプロトタイプを作る

7 ネイティブアプリの肝は通信のタイミング

8 情報に埋没しないインターフェイス

PR

秀和システム