ただApple Watch対応アプリを開発するのではなく、ユーザーに使ってもらえるアプリを開発する際のキモとは何だろうか。筆者自身がApple Watchを使っていて感じたこと、そして周囲の開発者と話して気付いたことをまとめてみよう。
「Apple Watchアプリを作るならGlances(グランス)がキモだな」
これが、Apple Watch対応アプリ開発について調べていて感じたことだ。Apple Watchアプリを開発するのであれば、アプリを起動してもらうための動線を確保し、何ができて、何ができないのかを見極めた上でアプリの設計図を描くことが大切だと思った。
さらに付け加えると、自分のiPhoneアプリをApple Watchに対応させるのであれば、その必然性を明確にしておかないといけない。さもないと最悪の場合「骨折り損のくたびれ儲け」という結果にもなりかねないと感じた。このコラムでは、実際にApple Watchアプリをリリースしている個人開発者の体験談を基にして、そのあたりの注意点に触れてみたい。
最初に、Apple Watchアプリについて基本的な部分を押さえておきたい。まず注意すべきは、Apple Watchは、iPhoneアプリとワンセットで開発する必要があるという点だ。サードパーティが開発するアプリにおいては、単体で動作する独立したApple Watchアプリというものは現状ではあり得ない。もちろん、既存のiPhoneアプリをApple Watchに対応させることはできる。
iPhoneアプリとワンセットでなければならないのは、Apple Watchのハードウエアとしての制限からだ。低い処理能力やバッテリ消費の問題を回避するには、アップルとして現時点ではこれがベストな方法だと判断したのだろう。
誤解を恐れずに言うと、Apple Watchアプリ(WatchKit App)は、iPhone側の本体アプリを操作するためのリモコンのような役割を担っていると思えばいい。Apple Watch側でのタップやフォースタップ(強く押し込むタップ)などをの操作を行うことで、iPhoneアプリ本体の「WatchKit Extension」が実処理を行い、その結果を再度、Apple Watch側に返すという流れとなる。
Apple Watchを使っていると、Apple Watchアプリは、大きく「Apple Watchアプリ(WatchKit App)」「Glances(グランス)」「Notification(通知)」という3種類の仕組みで成り立っていることが分かる。
以下、それぞれについてさらに詳しく説明しよう。
Apple Watchアプリは、アプリの主要部分を構成しており、ホーム画面に並んだアイコンをタップして起動する。ただ前述のように、iPhoneアプリとワンセットなので、アイコンをタップするとiPhone側で「WatchKit Extension」が動作を開始し、実処理はiPhoneが行っている。
例えば、ホーム画面でEvernoteのアイコンをアップすると待機カーソルが回転を開始する。この間にiPhoneと通信を行い、iPhone側でEvernoteアプリの「WatchKit Extension」を実行している。Apple WatchがEvernoteの画面(下図左)に変わったらiPhoneのロック画面を確認してみよう。左下にEvernoteのアイコンがグレーで小さく表示されている(下図右)。これで「WatchKit Extension」が動作を開始したということが分かる。このときiPhone側では、Evernoteのアプリ本体は起動していないが、WatchKit Extensionにより、Apple Watch側でノートを閲覧したり新規にノートを作成したりすることができる。
Glancesは、Apple Watchアプリのウィジェットのような役割を持った機能だ。iPhoneには、画面の上端を下にスワイプすると今日の天気や予定などを確認することができる「Today Extension」という機能がある。これのApple Watch版と思えばいい。
ただし、Apple Watchの場合は、時計の画面を下から上にスワイプすることで、Glances画面を表示することができる。Glancesは、読み取り専用の一画面で構成されており、画面を左右にスワイプすることで、他アプリのGlancesに移行することができる。Glances画面をタップすると該当するApple Watchアプリが起動する。Glancesを実装するか否かは、開発者の側で決定することができる。
Notificationは、「通知」を意味する言葉の通り、iPhoneのロック画面に表示される「通知」と同じ役割を持っている。メッセージ系、ニュース系のアプリには必須の機能と言える。
Notificationの画面には、何らかのアクションを促すボタンを設置することができる。例えば、メッセージ系のアプリの場合、「返信」ボタンの設置で、そのボタンからApple Watchアプリを起動し、あらかじめ用意しておいた、パターン化された返信メッセージをワンタップでと送信するいった仕組みを構築できる。NotificationはGlances同様、必ず実装しなければならないというものではない。
約1カ月間Apple Watchを使っていて感じたことだが、ユーザーにおけるApple Watchアプリの回帰率(再度アプリを利用してくれる率)や利用頻度そのものを上げたければ、Glances、あるいはNotificationの実装は不可欠だと思った。もちろん、コンセプトや機能によっては、GlancesやNotificationがアプリの性格上そぐわない場合もあるだろうが、これを実装しておかなければ、極端な話、せっかくのApple Watchアプリもユーザーに忘れ去られてしまう可能性もあると感じている。
Notificationは、メッセージ系やニュース系のアプリの場合、ほぼ必須であることはご理解いただけるだろう。iPhoneを鞄やポケットから取り出すことなく情報にアクセスできるというApple Watchがその能力を最大限発揮するためには、なくてはならない機能だからだ。ただ、Notificationの必要性を感じないアプリもある。そのようなアプリは、Glancesを上手に取り入れることで、アプリの起動率向上に寄与するのではないかと思っている。ここでは、そのGlancesに注目してみた。
筆者ならびに筆者周辺のApple Watchユーザーの意見だが、ホーム画面からApple Watchアプリのアイコンをタップして起動することはそれほど多くない。Apple Watchアプリの起動は、プチストレスを伴うからだ。その手順を追うと理由が分かる。まず、デジタルクラウンを押してホーム画面を表示する。小さく丸いたくさんのアイコンが並んでいるホーム画面をスクロールして目的のアイコンを見つける。
筆者だけでなく、多くのユーザーがそうだと思うのだが、頻繁に利用するアップル純正のメッセージ系、ワークアウト系アプリのアイコンを中央に配置して、“新顔”のサードパーティ系のアイコンは端っこに配置されていることと思う。アイコンをApple Watchの小さな画面で探した後、タップして起動する、という一連の動作は、ちょっと面倒なのだ。
筆者の場合、よく利用するサードパーティ製のアプリは、Glancesに常駐させておく。それにより(1)時計画面を下からスワイプ、(2)横にスワイプして該当するGlancesを表示、(3)画面をタップしてApple Watchアプリを起動、というストレスを感じない方法でアプリを起動することができる。逆に言うと、Glancesが実装されていないアプリの利用率は極端に低くなるわけだ。
http://www.atmarkit.co.jp/ait/articles/1504/24/news023.html
Apple WatchやiPhoneのアプリを作ろう! Playgroundで学ぶSwiftの基礎―変数、定数、型、演算
http://www.atmarkit.co.jp/ait/articles/1409/10/news169.html
iOS 8 SDK、Xcode 6、Swift 1.0がGMに。Apple Pay機能の組み込み、TestFlight Beta Testingも利用可能
Copyright © ITmedia, Inc. All Rights Reserved.