Developer's Blog

iPhone と Android で同じアプリを作るときの UI 設計ポイント

こんにちは。共同開発部企画担当の荻野と申します。

フェンリルでは自社のソフトウェアを開発する部署とは別に、他の企業や団体と共同でアプリケーションの開発をおこなう共同開発部という部署が存在します。

私はその中で企画提案の担当をしていますが、最近、「今ある iPhone アプリケーションを Android でも出したい」「iPhone と Android 同時開発してほしい」とのご相談をクライアント様よりいただく事が増えてきました。

droid-kun

「同じスマートフォン同士、親戚みたいなものなんだから簡単に平行展開できるでしょ?」と、軽いノリでご相談をもってきてくれるパートナー企業様。
いやいや、ちょっと待ってください。

iPhone と Android では、端末のも UI も全然違うので、そんな簡単にできるものではないのです。

そもそも OS が異なるので、 iOS では簡単にできるけど Android OS では実現できないことはいっぱいありますし、その逆も然り。

また、Apple、Google それぞれから公式のユーザーインターフェースガイドラインが出ていますが、根本的な設計思想にも差があり、細かい例を挙げるときりがないくらい違いがあります。

そんな中、「できるだけ良いものを早く世の中に提供したい」というパートナー様のご要望に応えるため、iPhone アプリケーションを Android アプリケーションに最適化させるちょっとしたポイントみたいなものをご紹介しようと思います。

■ Android では画面上になるべくボタンをおかない

iPhone のナビゲーションバーには、戻るボタンやちょっとした機能をアクションシートで呼び出すボタン、保存・キャンセルボタンなど、様々なボタンを配置できます。また、ツールバーという形で画面下部に機能ボタンを表示することもあります。

しかし、Android のデフォルトのナビゲーションバーはボタンを配置できるような UI ではなく、あくまで画面タイトルなどの情報を表示するスペースとして扱われています。また、ツールバーのように、画面下部にボタンを配置できるような UI もデフォルトでは用意されていません。

■ Android 端末ボタンを効果的に使う

では、同じ画面でも Android で同様の機能を持たせることができないのか、というとそうではありません。

 Android には iPhone にはない端末の Home、Menu、Back(端末によっては Search)ボタンがあります。これらをうまく活用すれば、ボタンを画面上に配置しなくてもアクションシートやツールバー同様に機能を呼び出したり、前の画面に戻る事も可能です。

また、コンテキストメニューといって、画面上の要素(セルなど)を長押しすると、それに関連する機能を選択できる UI も Android には存在します。

■ Android には Notification、ウィジェットもある

現行の iPhone にはない Android の特徴的な機能として、Notification (通知機能)やウィジェットがあります。Notification はアプリケーションを立ち上げていなくても、更新や新着などの情報を画面に通知してくれます。

ウィジェットでは、ホーム画面から直接アプリケーションの下層画面を呼び出すショートカット機能や、アプリケーションの一部機能をホーム画面上で使えるようにするなど、様々なことができます。これらをうまくアプリケーションの設計に絡めることができれば、iPhone では不可能な利用方法も Android で実現することが可能になります。

droid-kun

上記はあくまで一例なので、これだけ適用すれば良い、というものではありません。また、すべてのアプリケーションに当てはまるというものでもありません。

ただ、こういった基本的な知識をおさえつつ、さらに両方の特徴とアプリケーションの特徴や UI を知っていれば、同じ機能でそれぞれの OS に最適化されたアプリケーションを比較的短時間で提案することが可能になります。

Copyright © 2019 Fenrir Inc. All rights reserved.