読者です 読者をやめる 読者になる 読者になる

inFablic

Fablic開発者ブログ

Android Wearアプリ開発 - Wearアプリらしさを出すための工夫

この記事はFablic Advent Calendar 2015の18日目のエントリです。

こんにちは、Androidエンジニアとしてインターンをさせていただいている@nakamuuuです。

今回、フリルのAndroid Wearアプリの開発を担当させていただいたので、Wearアプリの設計・開発にあたって学んだことや注意したことなどをお伝えしたいと思います。

Android Wearの設計思想を理解する

Wearアプリを制作するにあたり、まずAndroid Wearというプラットフォームそのものの設計思想を理解するところから始めました。

Android Wearの設計思想については公式のドキュメントに書かれています。簡単にまとめると以下の通りです。

  • Launched automatically
    • タイムリーで関連性のある情報を自動的に表示する。
  • Glanceable
    • 短い時間で情報を把握することができる。
  • All about suggest and demand
    • 常にユーザーの特性に合わせた答えを準備しておき、必要なときにだけ提案する。
  • Zero or low interaction
    • 単純な対話性にフォーカスし、細かな操作は必要としない。

Android Wearをはじめとするスマートウォッチに搭載される1.5インチほどの小さなディスプレイでは、表示する情報や要求できる操作というものはかなり限られます。Android Wearの設計思想を理解した上で、一つひとつの要素を本当に必要なものであるかどうかを常に考えながら設計をしていくことはとても重要なこととなってきます。

また、この設計思想はWearアプリから直接ネットワーク通信を行うことができない*1などの技術的な制約・仕様にも表れています。

「スマートフォン向けのアプリケーションをそのままAndroid Wearに移植する」といった誤った感覚でWearアプリの設計を行うと、ユーザー体験を損なうだけでなく開発段階でも大きなコストを生み出してしまうこととなるので注意が必要です。

Android Wearに最適化した各機能

フリルでは2つの機能をWearアプリで提供することとなりました。

  • フォロータイムライン:フォローしているユーザーが出品した商品の表示
  • 取引中の商品:出品・購入した商品の取引状況一覧の表示

どちらもスマートフォンやタブレット端末でも利用することができる機能ですが、Android Wearの設計思想なども踏まえていくつかの工夫を行っています。

フォロータイムライン

f:id:nakamuuu-muuu:20151215154702p:plain

フォロータイムラインはAndroid Wearのホーム画面でもあるようなグリッド状のレイアウトに商品画像と必要最低限の情報・機能を配置しています。より詳細な情報は標準のインタラクションとして定着している「端末で開く」ボタンからスマートフォンでシームレスに確認することができるようにしています。

また、いいね機能をブックマークのように使用することで時間のあるときにまとめて気になった商品をスマートフォンで見るといった使い方も可能です。

フォロータイムラインでは過多な情報の提供や細かな操作の要求を行わないことに特に重点を置き設計・開発を行いました。当初はこの画面からコメント機能の一部や購入申請をできるようにするという案もありましたが、Wearアプリを「興味のある商品を見つける場」として割り切ることでコンテンツとしての魅力と単純な対話性を両立しています。

取引中の商品

f:id:nakamuuu-muuu:20151216164429p:plain

取引中の商品画面では出品・購入した商品の取引状況の一覧を表示しています。元々、フリルでは「出品した商品」「購入した商品」が別々のリストとして存在していましたが、Wearアプリではこの2つを統合して1つの画面にしています。取引中の商品が多数存在する場合もあるため、この画面ではグリッド状のレイアウトではなくリスト状の構成にすることで一覧性を確保しました。

また、フォロータイムラインと同様に取引中の商品の詳細画面にも「端末で開く」ボタンを配置し、取引画面をスマートフォンでシームレスに確認することができるようにしています。

ここでも設計段階では購入申請の承認や商品の発送通知、取引メッセージの送信を行えるようにするという案もありました。しかし、複雑かつ慎重な操作を要求する取引周りの処理は大きな画面を持つスマートフォンで行うべきという判断から、取引状況の確認のみに特化した構造となっています。

Wearアプリ開発を振り返って

今はまだAndroid Wear自体が発展途上であることもあり、参考にできる資料や先行事例が少なく、設計や開発の段階での悩みどころも少なくはありませんでした。しかし、こうした新しいプラットフォームでのアプリの制作は開発者として純粋に面白いと感じる部分も数多くあったほか、プラットフォームの発展そのものに微力ながら参加出来るという楽しみもあります。

Android Wearで何ができるか、Android Wearで何をすべきかを探りながらの制作でしたが、スマートフォン向けのアプリとは異なる「WearアプリらしいWearアプリ」に仕上げることができたのではないでしょうか。

Wearアプリだけに限らずそれぞれのデバイスやプラットフォームを深く理解した上で、本当にユーザーにとって価値のあるものを考えていけるように心がけていきたいです。

来週の月曜日は @sinamon129 さんが検索まわりについて何か書いてくれるそうです。お楽しみに!

*1:Wearアプリでネットワーク上の情報を利用するにはDataAPIやMessageAPIなど、スマートフォンとの通信を担う専用のAPIを経由してデータを取得する必要があります。(参考