操作說明

發布及發行 Android XR 應用程式時不可不知的 5 件事

4 分鐘閱讀
Jan Kleinert
開發人員關係工程師

Samsung Galaxy XR 登場,搭載 Android XR!這篇網誌文章是 Android XR Spotlight Week 的一部分,我們將提供網誌文章、影片和範例程式碼等資源,協助您學習、建構及準備 Android XR 應用程式。  

今天,我們將著重於開發歷程的最後一個步驟,確保這些體驗能順利提供給使用者。正確發布應用程式可確保應用程式有效封裝、由合適的裝置探索,並以最佳狀態呈現。

以下是在 Google Play 發布及發行 Android XR 應用程式時,您需要瞭解的 5 件事。

1. 遵循 Android XR 應用程式品質指南,確保應用程式品質

發布前最重要的步驟之一,就是確保應用程式提供安全、舒適且效能良好的使用者體驗。

遵循 Android XR 應用程式品質指南,有助於確保應用程式在 Galaxy XR 等裝置上提供優質的使用者體驗。

品質的重要性

這些指南以大螢幕應用程式品質指南為基礎,著重於重要的 XR 專屬條件,包括:

  • 安全和舒適:這是最重要的考量。這些規範為攝影機移動和影格速率設定標準,並限制閃爍等視覺元素,有助於避免動暈症。
  • 效能:應用程式必須達到目標影格速率等效能指標,才能避免延遲,確保使用者享有流暢舒適的體驗。
  • 互動:這些指南指定互動目標的建議最小尺寸 (例如最小 48 dp,建議 56 dp),確保目標能與眼球追蹤和手部追蹤輸入內容順利互動。

2. 正確設定應用程式資訊清單

AndroidManifest.xml 檔案會說明應用程式的重要資訊。Android 建構工具、Android 系統和 Google Play 會使用這項資訊,瞭解您建構的體驗類型和所需的硬體功能。正確設定是指定裝置和啟動應用程式的關鍵。

指定應用程式使用的 Android XR SDK

在應用程式資訊清單中加入 android.software.xr.api.spatialandroid.software.xr.api.openxr,指出您是使用 Jetpack XR SDK 建構,還是使用 OpenXR 或 Unity 建構。

使用的 SDK資訊清單宣告
Jetpack XR SDKandroid.software.xr.api.spatial
OpenXR 或 Unityandroid.software.xr.api.openxr

如果應用程式是使用 OpenXR 或 Unity 建構,請務必將 android:required 屬性設為 true如果是使用 Jetpack XR SDK 建構的應用程式,請在應用程式發布至 Android XR 專用發布群組時,將 android:required 屬性設為 true;在應用程式發布至行動裝置發布群組時,將 android:required 屬性設為 false

設定活動啟動模式

在主要活動中使用 android.window.PROPERTY_XR_ACTIVITY_START_MODE 屬性定義預設使用者環境:

啟動模式目的SDK
XR_ACTIVITY_START_MODE_HOME_SPACE在主畫面模式 (共用的多工處理環境) 中啟動應用程式。Jetpack XR SDK
XR_ACTIVITY_START_MODE_FULL_SPACE_MANAGED在全螢幕模式下啟動,享受完全沉浸式的單一應用程式環境。Jetpack XR SDK
XR_ACTIVITY_START_MODE_FULL_SPACE_UNMANAGED在全螢幕模式下啟動,享受完全沉浸式的單一應用程式環境。請注意,使用 OpenXR 或 Unity 建構的應用程式一律會在全螢幕中執行。OpenXR 或 Unity

在執行階段檢查選用的硬體功能

除非應用程式真的需要,否則請避免將選用的 XR 功能 (例如手勢追蹤或控制器) 設為 android:required="true"。如果裝置不支援必要功能,Google Play 會對該裝置隱藏您的應用程式。如果將功能設為必要,但應用程式不使用這些功能也能運作,可能會不必要地限制目標對象。

請改為在執行階段使用 hasSystemFeature()PackageManager 類別,動態檢查進階功能:

  Kotlin

val hasHandTracking = packageManager.hasSystemFeature("android.hardware.xr.input.hand_tracking")

if (hasHandTracking) {

    // Enable high-fidelity hand tracking features

} else {

    // Provide a fallback experience

}

確保應用程式廣泛相容,並在推出時運用進階功能。


3. 使用 Play Asset Delivery (PAD) 提交大型資產

沉浸式應用程式和遊戲通常含有大型資產,可能超出標準大小限制。使用 Play Asset Delivery (PAD) 管理大型高保真資產。PAD 提供彈性的放送模式:安裝時提供、以快速追蹤的方式提供,以及隨選提供,可逐步下載內容。為 Android XR 打造的應用程式可以提供額外資產包,以隨選或立即接續方式提供的資產包累計總大小上限為 30 GB,而非 4 GB。

如果是使用 Unity 建構遊戲的開發人員,請搭配使用 Unity Addressable 和 Play Asset Delivery 管理資產包。


4. 使用空間影片預覽展示應用程式

如要吸引使用者在 XR 頭戴式裝置上瀏覽 Play 商店時的目光,可以提供空間影片素材資源,讓他們沉浸式預覽應用程式。影片必須是 180°、360° 或立體影片。在 Android XR 裝置上,Play 商店會自動將這項內容顯示為沉浸式 3D 預覽畫面,讓使用者在安裝應用程式前,體驗內容的深度和規模。


5. 選擇 Google Play 發布群組

Google Play 提供兩種發布 Android XR 應用程式的途徑,兩者都使用相同的 Play 管理中心帳戶:

選項 A:繼續使用行動裝置發布群組 (適用於空間化行動應用程式)

如果要在現有的行動應用程式中加入空間延展實境功能,通常可以將延展實境功能或內容併入現有的 Android App Bundle (AAB)。

如果應用程式在行動裝置和 XR 裝置上都能維持大部分的核心功能,且您能繼續將相同的 AAB 發布至行動裝置測試群組,這個方法就非常適合您。請參閱這份指南,確認您已正確設定應用程式的資訊清單檔案,支援這個用途。

方法 B:發布至 Android XR 專屬發布群組

如果您要為 XR 裝置建構全新應用程式,或是 XR 版本的功能與其他版本差異過大,不適合使用單一 AAB,請發布至 Android XR 專屬發布群組

發布至 Android XR 專用發布群組的應用程式,只會向支援 android.software.xr.api.spatialandroid.software.xr.api.openxr 功能的 Android XR 裝置顯示,方便您控管發布作業。

遵循這項指南,有助於確保創新的 Android XR 應用程式提供優質的使用者體驗、有效率地封裝、透過 PAD 順利發布,以及指定可執行應用程式的裝置。祝你發布愉快!

撰寫者:

繼續閱讀