啟用 Android 適用的 ARCore

本頁面說明如何在以 Android 裝置為目標的 Unity 專案中啟用 ARCore 功能。請採取下列行動進行預先規劃:

  1. 匯入 Unity 的 ARCore SDK
  2. 將您的應用程式設為 AR 必要或 AR 選用
  3. 確認您的應用程式符合 ARCore 的使用者隱私權規定

Google Play 服務 - AR 適用

ARCore SDK 可讓支援 ARCore 的裝置安裝 Google Play 服務 AR 適用 (ARCore) 版的 ARCore 功能。

Google Play 服務 - AR 適用,可自動安裝並隨時掌握絕大多數的支援裝置。

AR 工作階段開始前,應用程式必須:

  1. 呼叫 CheckApkAvailability,檢查系統是否支援 ARCore。
  2. 呼叫 Session.RequestApkInstallation(bool userRequested),檢查是否已安裝並更新 ARCore 的 Google Play 服務,並已下載必要的 ARCore 裝置設定檔資料。

匯入 Unity 適用的 ARCore SDK

  1. 開啟 Unity 並建立新的 3D 專案。

  2. 安裝特定版本套件。

    2020 Unity

    依序選取「Window」>「Package Manager」,然後安裝下列套件:

    • 多人遊戲 HLAPI (Cloud Anchors 範例要求)
    • XR 外掛程式管理 (使用 TrackedPoseDriver 的即時預覽時必須使用)

    2019 Unity

    依序選取「Window」>「Package Manager」,然後安裝下列套件:

    • 多人遊戲 HLAPI (Cloud Anchors 範例要求)
    • XR 舊版輸入輔助程式 (使用即時預覽時必須使用 TrackedPoseDriver)。

    2018 Unity

    不需要其他套件。繼續執行下一步。

    2017 Unity

    不需要其他套件。繼續執行下一步。

  3. 匯入 Unity 適用的 ARCore SDK:

    1. 依序選取「Asset」>「Import Package」>「Custom Package」

    2. 選取已下載的 arcore-unity-sdk-1.25.0.unitypackage

    3. 在「Import Package」(匯入套件) 對話方塊中,確認已選取所有套件選項,然後按一下 [Import] (匯入)。

在 Unity 的「Project」視窗中,您應該會在 Assets/GoogleARCore/Examples/HelloAR/ 中看到 SDK 檔案和 HelloAR 範例應用程式。

將應用程式設為 [擴增] 或 [擴增實境要求]

支援 AR 功能的應用程式有兩種設定方式:AR 必要AR 選用。如果您必須決定要選擇哪個應用程式,請參閱在 Google Play 商店中發布 AR 應用程式

需要 AR

如要使用 AR 要求,您必須安裝 ARCore 支援的裝置 (已安裝 AR 適用 Google Play 服務)。

  • Google Play 商店只能在支援 ARCore 的裝置上使用 AR 必要應用程式。

  • 當使用者安裝 AR 需要的應用程式時,Google Play 商店會自動安裝 AR 適用 Google Play 服務。不過,開發人員必須執行額外的執行階段檢查,才能更新或手動解除安裝適用於 AR 的 Google Play 服務,或是 ARCore 裝置設定檔資料並非最新版本。

詳情請參閱在 Google Play 商店中發布 AR 應用程式

如要將應用程式設為 AR,請按照下列步驟操作。

2020 Unity

  1. 開啟 [Edit] > [Project Settings]。選取「Google ARCore」,並確認已勾選「ARCore Only」

  2. 依序點選 [Edit] (編輯) > [Project Settings] (專案設定) > [Play] (玩家),然後選取包含 Android 圖示的分頁標籤,以設定適當的 [Minimum API Level] (最低 API 級別)。在「其他設定」>「識別」下方,選取 24 或更高級別的最低 API 級別

2019 Unity

  1. 開啟 [Edit] > [Project Settings]。選取「Google ARCore」,並確認已勾選「ARCore Only」

  2. 依序點選 [Edit] (編輯) > [Project Settings] (專案設定) > [Play] (玩家),然後選取包含 Android 圖示的分頁標籤,以設定適當的 [Minimum API Level] (最低 API 級別)。在「其他設定」>「識別」下方,選取 24 或更高級別的最低 API 級別

2018 Unity

  1. 開啟 [Edit] > [Project Settings]。選取「Google ARCore」,並確認已勾選「ARCore Only」

  2. 依序點選 [Edit] (編輯) > [Project Settings] (專案設定) > [Play] (玩家),然後選取包含 Android 圖示的分頁標籤,以設定適當的 [Minimum API Level] (最低 API 級別)。在「其他設定」>「識別」下方,選取 24 或更高級別的最低 API 級別

2017 Unity

  1. 開啟「Edit」(編輯) >「Project Settings」(專案設定) >「Google ARCore」(Google ARCore),然後確認已勾選「ARCore required」(需要 ARCore)

  2. 依序點選 [Edit] (編輯) > [Project Settings] (專案設定) > [Play] (玩家),然後選取包含 Android 圖示的分頁標籤,以設定適當的 [Minimum API Level] (最低 API 級別)。在「其他設定」>「識別」下方,選取 24 或更高級別的最低 API 級別

您的應用程式會自動執行執行階段檢查,以確保裝置支援 ARCore,且已安裝 AR 適用的 Google Play 服務,且 ARCore 裝置設定檔資料皆為最新版本。如果未安裝 Google Play 服務 AR 服務 (可能是使用者自行移除),或是版本過舊,您的應用程式會提示使用者安裝或更新。如果 ARCore 裝置設定檔資料不是最新版本,您的應用程式就會下載並更新資料。如果安裝或更新失敗 (可能是網路故障),Session.Status 會傳回錯誤,而您的應用程式應處理錯誤並結束。

AR 選填

AR 選擇性應用程式提供選用的 AR 功能,只會在已安裝 AR 專用 Google Play 服務的裝置上啟用。

  • AR 選用應用程式可在不支援 ARCore 的裝置上安裝並執行。

  • 當使用者安裝 AR 選用應用程式時,Google Play 商店不會自動安裝 AR 專用的 Google Play 服務

如要將應用程式設為擴增實境狀態,請按照下列步驟操作。

2020 Unity

  1. 開啟 [Edit] > [Project Settings]。選取 [Google ARCore],然後取消勾選 [ARCore Only]

  2. 依序點選 [Edit] (編輯) > [Project Settings] (專案設定) > [Play] (玩家),然後選取包含 Android 圖示的分頁標籤,以設定適當的 [Minimum API Level] (最低 API 級別)。在「其他設定」>「識別」下方,選取 18 或更高級別的最低 API 級別

2019 Unity

  1. 開啟 [Edit] > [Project Settings]。選取 [Google ARCore],然後取消勾選 [ARCore Only]

  2. 依序點選 [Edit] (編輯) > [Project Settings] (專案設定) > [Play] (玩家),然後選取包含 Android 圖示的分頁標籤,以設定適當的 [Minimum API Level] (最低 API 級別)。在「其他設定」>「識別」下方,選取 18 或更高級別的最低 API 級別

2018 Unity

  1. 開啟 [Edit] > [Project Settings]。選取 [Google ARCore],然後取消勾選 [ARCore Only]

  2. 依序點選 [Edit] (編輯) > [Project Settings] (專案設定) > [Play] (玩家),然後選取包含 Android 圖示的分頁標籤,以設定適當的 [Minimum API Level] (最低 API 級別)。在「其他設定」>「識別」下方,選取 18 或更高級別的最低 API 級別

2017 Unity

  1. 開啟「Edit」(編輯) >「Project Settings」(專案設定) >「Google ARCore」(Google ARCore),然後取消勾選「ARCore required」(需要 ARCore)

  2. 依序點選 [Edit] (編輯) > [Project Settings] (專案設定) > [Play] (玩家),然後選取包含 Android 圖示的分頁標籤,以設定適當的 [Minimum API Level] (最低 API 級別)。在「其他設定」>「識別」下方,選取 18 或更高級別的最低 API 級別

執行執行階段檢查

啟動之後,您的應用程式必須呼叫 Session.CheckApkAvailability() 來檢查裝置是否支援 ARCore。如果支援,系統會說明是否已安裝最新的 Google Play 服務 AR 和 ARCore 裝置設定檔資料。

您的應用程式應處理以下情況:

條件 動作
裝置不支援 ARCore。 隱藏 AR 相關功能。
裝置支援 ARCore,但 Google Play 服務 AR 和/或 ARCore 裝置設定檔資料並未安裝或過時。 透過呼叫 Session.RequestApkInstallation() 提示使用者安裝或更新 AR 和/或 ARCore 裝置設定檔資料。
裝置支援 ARCore 以及 ARCore 的 Google Play 服務,且已安裝 ARCore 裝置設定檔資料。 建立 ARCore Session 並開始使用 ARCore。

使用者隱私權規定

確認您的應用程式符合 ARCore 的使用者隱私權規定

後續步驟

讀取範例應用程式中的程式碼和 Unity API 適用的 ARCore 參考資料