ユーザーは、ホームスペース モードまたはフルスペース モードの 2 つのモードでアプリを体験できます。ホームスペースでは、ユーザーはアプリを他のアプリと並べて実行してマルチタスクを行うことができます。フルスペースでは、アプリがユーザー エクスペリエンスの中心となり、Android XR の没入型機能にフルアクセスできます。
起動時のデフォルト モードを宣言するセクションで説明されているように、特に指定しない限り、アプリはデフォルトでホームスペースで開きます。
空間化はフルスペースでのみサポートされています。アプリはフルスペースに移行して、空間機能と 3D 機能を活用できます。アプリにフォーカスがある場合は、対応するスペースをリクエストすることで、これらのモードを切り替えることができます。
SpaceToggleButton を使用してホームスペースとフルスペースを切り替える
ホームスペースとフルスペースを切り替えるには、Material Design for XR ライブラリの SpaceToggleButton コンポーザブルを使用します。
これは、現在の空間モードに適応し、フルスペースとホームスペースを切り替えるコンポーザブル ボタンです。
ホームスペースとフルスペースの間のカスタム遷移を構築する
Jetpack Compose XR ライブラリを使用している場合は、LocalSession コンポジション ローカルを使用してホームスペースまたはフルスペースをリクエストします。
val session = LocalSession.current ?: return session.scene.requestHomeSpace() // or session.scene.requestFullSpace()
Jetpack SceneCore ライブラリを使用している場合は、Session から対応するスペースをリクエストできます。Jetpack SceneCore から Session にアクセスするをご覧ください。
xrSession.scene.requestHomeSpace()
ホームスペースからフルスペースへの移行と、2 つのスペース間の最適な移行方法について詳しくは、設計ガイダンスをご覧ください。
起動のデフォルト モードを宣言する
または、Android マニフェスト ファイルに次の行を追加して、アプリを開くスペースを選択することもできます。
<!-- Launch in Full Space. -->
<property
android:name="android.window.PROPERTY_XR_ACTIVITY_START_MODE"
android:value="XR_ACTIVITY_START_MODE_FULL_SPACE_MANAGED" />
<!-- Or, launch in Home Space. -->
<property
android:name="android.window.PROPERTY_XR_ACTIVITY_START_MODE"
android:value="XR_ACTIVITY_START_MODE_HOME_SPACE" />