既存の 2D モバイルアプリは、電話機能など、サポートされていない機能を必要としない限り、Android XR ヘッドセットと有線 XR グラス デバイスと自動的に互換性があります。ユーザーは Android XR 対応アプリで重要なタスクフローを完了できますが、ユーザー エクスペリエンスは最適とはいえません。理想的には、XR デバイスでのみ提供される機能を実装した、XR 向けの差別化されたエクスペリエンスを設計する必要があります。詳しくは、XR を使用してアプリを 3D にするデベロッパー ガイドをご覧ください。
ただし、アプリの空間機能を開発する一方で、Android XR デバイスでアプリを使用しているユーザー向けに、既存のアプリ エクスペリエンスを最適化することもできます。これを実現するには、アダプティブ アプリの品質に関するガイドラインに沿って、少なくともティア 2 のサポートを目指してください。まず、このガイドの各セクションを確認してください。Android XR でユーザーに優れたエクスペリエンスを提供するために注力すべき分野が強調されています。
アプリをチェックする
Android XR でのアプリのエクスペリエンスに影響する可能性のある次の各カテゴリについて、アプリを確認してください。カテゴリごとに、関連するアダプティブ アプリのガイドラインとデベロッパー ガイドを参照して、優れたアダプティブ エクスペリエンスを構築してください。
ディスプレイと画面の向き
Android XR の一般的な問題の多くは、デバイスの画面の向きと画面設定に関する想定が原因で発生します。
確認ポイント
- 自然な向きの不一致: ほとんどのスマートフォンでは、縦向きモードに対応する自然な向き(
Surface.ROTATION_0)が設定されていますが、多くの XR デバイスでは横向きが自然な向きとして使用されています。 - 画面の向きのハードコードを避ける: アプリの画面の向きをハードコードすると、さまざまな画面やフォーム ファクタに対応できなくなる可能性があります。
- 構成の変更: アプリが構成の変更を処理することを確認します。アプリをレイアウトする際に、デバイスがスマートフォンであると想定しないでください。
- レイアウトとレンダリング: XR ヘッドセットや有線 XR グラスなどの XR デバイスは、非常に高解像度のディスプレイを備えている場合があります。UI 要素が大きすぎたり、切り取られたりしないように、物理的な表示サイズではなく、特定のウィンドウの境界を確認します。クリッピングを避けるため、アプリのコンテンツとインタラクティブなボタンをウィンドウの端に近づけすぎないでください。
ガイダンス
- デベロッパー ガイド:
- アダプティブ アプリのガイドライン:
動的なサイズ変更とマルチウィンドウ
XR ヘッドセットと有線 XR グラスには、アプリ ウィンドウのサイズ変更や位置変更を自由に行える空間環境が備わっています。
確認ポイント
- ウィンドウ サイズの変更をサポートする: アプリは、サイズ変更イベントの実行中および実行後に、ユーザーの進行状況、スクロール位置、テキスト入力を維持する必要があります。また、アプリの UI を新しいウィンドウのサイズに合わせて調整してください。
ガイダンス
- デベロッパー ガイド:
- アダプティブ アプリのガイドライン:
カメラ
カメラアプリでは、XR ヘッドセットと有線 XR グラスのセンサーと仮想の前面カメラについて特別な考慮事項があります。
確認ポイント
- デバイスの自然な向き: XR デバイスでは、横向きが自然な向きとして使用されることがよくあります。システムは、デバイスの自然な向きを基準にしてカメラセンサーの回転値をカウントします。つまり、XR デバイスでは、カメラセンサーの回転が 0 度のとき、通常は横向きになりますが、スマートフォンでは通常は縦向きになります。そのため、回転角度の値に基づいてデバイスまたはカメラセンサーの向きを想定しないでください。
- 仮想前面カメラ: 前面カメラを搭載した XR デバイスは、スマートフォンとは異なり、ユーザーのアバターの仮想ビューを提供します。この仮想ビューは水平方向に反転している可能性があるため、アプリは特定の向きを想定すべきではありません。
ガイダンス
- デベロッパー ガイド:
- アダプティブ アプリのガイドライン:
入力
アプリは、XR ヘッドセットと有線 XR グラスでサポートされているさまざまな入力方法をサポートする必要があります。
確認ポイント
- タップ ターゲット: 他のフォーム ファクタよりも大きなタップ ターゲットを使用して、精度、快適さ、使いやすさを向上させます。
- キーボードのサポート: システムの仮想キーボードと外部キーボードの両方でアプリをテストします。
- ゲームパッドのサポート: アプリのメニューの操作中やゲームプレイ中にゲーム コントローラをサポートします。
ガイダンス
- デベロッパー ガイド:
- アダプティブ アプリのガイドライン:
- Touch_Targets(XR 固有のターゲット サイズについては、Android XR のターゲットを参照)
- Keyboard_Input
システムのライフサイクル
アプリはシステム ライフサイクル イベントを適切に処理する必要があります。
確認ポイント
- サイズ変更中のオーディオと動画の継続性: ウィンドウのサイズ変更中もメディアの再生は同期された状態を維持する必要があります。
- 着脱時の音声と動画の継続性: ユーザーがデバイスを着脱したときに、メディアの再生が中断したところから再開されるようにします。
ガイダンス
- デベロッパー ガイド:
- アダプティブ アプリのガイドライン: