TV アプリに一貫性があり、論理的かつ予測可能であれば、ユーザーは TV アプリを楽しむことができます。ユーザーが操作に迷ったり、UI を「リセット」してやり直したりすることなく、アプリ内および Android TV 全体にわたってナビゲートできる必要があります。ユーザーは、魅力的な体験を生み出す、カラフルでわかりやすい機能的なインターフェースを好みます。こうしたアイデアを参考にすることで、ユーザーの期待どおりに動作する、Android TV にぴったりのアプリを作成できます。
これらのチェックリストは、アプリおよびゲーム開発の主要な要素を対象としています。また、アプリのエクスペリエンスを最大限に高めるためのガイドラインも紹介します。ゲームのみを対象とするその他の考慮事項については、ゲームのセクションをご覧ください。
Android TV アプリが Google Play を通じて配信されるための基準については、TV アプリの品質 を参照してください。
テレビの形状サポート
以下のチェックリスト項目は、ゲームとアプリに適用されます。
-
マニフェストの
CATEGORY_LEANBACK_LAUNCHERフィルタで主な TV アクティビティを指定します。 -
アプリがサポートする各言語用に、次の特性を持つホーム画面バナーを用意します。
- バナーの大きさは 320x180 ピクセル。
- バナーのリソースは
drawables/xhdpiディレクトリに格納する。 - バナーの画像にローカライズしたテキストを含めて、アプリを特定できるようにする
- アプリでデバイスが背景モードに移行するのを防ぐ必要があるかどうかを検討します。これは、メディア 再生アプリに特に当てはまります。
- しないで要件を宣言するサポート対象外となる可能性のあるハードウェアの場合。
- 権限からハードウェア要件がわからないようにします。
ユーザー インターフェースの設計
以下のチェックリスト項目は、ゲームとアプリに適用されます。
-
android:screenOrientation="landscape"を設定して、横向きのアクティビティを指定します。 - 適切なレイアウトリソース横表示の場合。
- テキストとコントロールが遠くからでも見えるように十分な大きさであることを確認してください。
- HDTV 画面用に高解像度のビットマップとアイコンを用意します。
- アイコンとロゴが Android TV の仕様に準拠するようにします。
- レイアウト内でのオーバースキャンを許可します。
- ユーザーが開始したメディア再生がアクティブな場合、デバイスが背景モードに移行しないようにする。
- すべての UI 要素を D-pad コントローラとゲーム コントローラの両方で使用できるようにします。TV 用ナビゲーションと TV ハードウェアに対応するをご覧ください。
- ユーザーがコンテンツをブラウジングしている間に背景画像を変更します。
- ブランディングに合わせて背景色をカスタマイズします。
- UI にタッチスクリーンが必要ないことを確認します。詳しくは、タッチスクリーンおよびタッチスクリーンが不要であることを宣言するをご覧ください。
- 効果的な広告を提供するためのガイドラインに遵守します。
- ユーザーの意思決定プロセスをサポートするために、明確な複数ステップのナビゲーション画面を設計します。
検索とコンテンツの発見
以下のチェックリスト項目は、ゲームとアプリに適用されます。
- アプリからの検索結果を Android TV のグローバル検索ボックスに表示します。
- TV 固有のデータ フィールドを検索用に用意します。
- 発見したコンテンツをアプリの詳細画面に表示して、ユーザーがその画面からコンテンツをすぐに視聴できるようにします。
TV のホーム画面
以下のチェックリスト項目は、ホーム画面のレイアウトとコンテンツに適用されます。
チャンネル
- チャンネルのコンテンツを表すわかりやすい名前を指定します。アプリ名をチャンネル名として使用しないでください。
- チャンネル名は、ユーザーとのなんらかのやり取りが行われるまで変更しないようにします。
- 各チャンネルに関連するアイコンを含めます。アイコンはアプリのアイコンと全く同じである必要はありません。チャンネル内のコンテンツをブランドイメージで表現したものでも構いません。
- 各チャンネルはユニークである必要があります。また、次のおすすめの行に似た機能にならないようにする必要があります。たとえば、ユーザーが中止した動画の視聴を再開できるようにすることは、チャンネルの有効な用途ではありません。
チャンネルのコンテンツ
- チャンネル内の各プログラムにコンテンツを 1 つ含める必要があります。プログラムに動画のコレクションを含めてはなりません。
- 宣伝メッセージや広告にプログラムを使用しないでください。
- 各プログラムに適切な説明を記載し、メタデータを正しくマッピングしてください。たとえば、タイトルが表示されるはずの場所にコンテンツのレーティングを表示しないでください。
- 番組コンテンツを表すプレビュー画像をトリミングしたり、引き伸ばしたりしないでください。それらは、利用可能なアスペクト比のいずれかに適合する必要があります。
- ユーザーがプログラムを選択したら、すぐに再生を開始します。
次のおすすめ
- ユーザーがなんらかの方法で次のおすすめの行を操作していない限り、次のおすすめの行にコンテンツを追加しないでください。たとえば、ユーザーが現在視聴しているシリーズの次のエピソードを追加することはできますが、ユーザーが現在のシリーズを見終わったときに関連する別のシリーズを追加してはなりません。
- Play Next のコンテンツを、従来のテレビ番組、映画、またはイベントに限定します。次のおすすめの行にクリップを追加しないでください。
再生アプリ
以下のチェックリスト項目は、メディア再生を行うアプリに適用されます。
- メディア セッションを登録して、メディア再生の状態をプラットフォームに通知し、再生コントロールをアプリに委任できるようにします。
-
画面で動画が再生されている間、
FLAG_KEEP_SCREEN_ONフラグを設定して、再生中にデバイスがスタンバイ モードまたはアンビエント モードに移行するのを防ぎます。 - メディア コントローラ テストとメディア セッション バリデータを使用して、メディア コマンドがメタデータを正確に公開し、再生を制御することを確認します。
- アンビエントモード関連の品質ガイドラインを遵守してください。 アンビエントモードは、視聴セッションの合間に静かにユーザーを楽しませ、画面の焼き付きを防ぎます。
-
アプリのメモリをプロファイリングし、低 RAM デバイスを検出するために
ActivityManager.isLowRamDevice()を確認してください。これらのデバイスでは、メモリ使用量の最適化に関するガイドラインの要件に準拠する必要があります。
ゲーム
これらのチェックリスト項目はゲームに適用されます。
-
マニフェストで
isGameフラグを設定すると、ゲームが ホーム画面 のゲームセクションに表示されます。 - ゲームコントローラーのサポートがスタート、セレクト、またはメニューボタンに依存しないことを確認してください。すべてのコントローラにこれらのボタンがあるわけではありません。
- ゲームボタンのマッピングの表示には、特定のブランドのコントローラを使用しない、一般的なゲームパッドのグラフィックを使用します。
- イーサネットと Wi-Fi の両方の接続を確認します。
- わかりやすいアプリの終了方法をユーザーに提供します。
Android TV に配布する
Android TV に配信する方法については、Google Play で TV アプリを公開するための詳細なガイドをご覧ください。