啟用 Android 適用的 ARCore

本頁面說明如何在以 Android 裝置為目標的 Unity 專案中啟用 ARCore 功能。步驟如下:

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

Google Play 服務 - AR 適用

ARCore SDK 會在已安裝 AR Google Play 服務 AR (ARCore) 的支援 ARCore 的裝置上提供 AR 功能。

Google Play 服務 - AR 適用會在大多數支援的裝置上自動安裝及更新。

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

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

匯入 ARCore SDK for Unity

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

  2. 安裝特定版本的套件。

    Unity 2020

    選取 [Window > Package Manager],然後安裝下列套件:

    • 多人對戰 HLAPI (Cloud Anchors 範例要求)
    • XR 外掛程式管理 (即時預覽功能需要使用) TrackedPoseDriver)

    Unity 2019

    選取 [Window > Package Manager],然後安裝下列套件:

    • 多人對戰 HLAPI (Cloud Anchors 範例要求)
    • XR Legacy Input Helpers (即時預覽功能需要使用) TrackedPoseDriver)

    Unity 2018

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

    Unity 2017

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

  3. 匯入 ARCore SDK for Unity:

    1. 選取 [Assets > Import Package > Custom Package]

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

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

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

將應用程式設為 AR 必要或 AR 選用

應用程式支援 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,請按照下列步驟操作。

Unity 2020

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

  2. 按一下 [Edit > Project Settings > Player],然後設定包含 Android 圖示的分頁,即可設定適當的「最低 API 級別」。在「Other Settings > Identifi」下,選取 24 或更高的 API 級別

Unity 2019

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

  2. 按一下 [Edit > Project Settings > Player],然後設定包含 Android 圖示的分頁,即可設定適當的「最低 API 級別」。在「Other Settings > Identifi」下,選取 24 或更高的 API 級別

Unity 2018

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

  2. 按一下 [Edit > Project Settings > Player],然後設定包含 Android 圖示的分頁,即可設定適當的「最低 API 級別」。在「Other Settings > Identifi」下,選取 24 或更高的 API 級別

Unity 2017

  1. 開啟 [Edit > Project Settings > Google ARCore],然後確認已勾選 [需要 ARCore]

  2. 按一下 [Edit > Project Settings > Player],然後設定包含 Android 圖示的分頁,即可設定適當的「最低 API 級別」。在「Other Settings > Identifi」下,選取 24 或更高的 API 級別

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

AR 選用

AR 可選用的應用程式具有選用的 AR 功能,但只有當裝置已安裝 Google Play 服務 AR 適用時,才會啟用 AR 功能。

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

  • 當使用者安裝 AR 選擇性應用程式時,Google Play 商店「不會」自動安裝應用程式。AR 適用 Google Play 服務

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

Unity 2020

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

  2. 按一下 [Edit > Project Settings > Player],然後設定包含 Android 圖示的分頁,即可設定適當的「最低 API 級別」。在「Other Settings > Identifi」下,選取 18 或更高的 API 級別

Unity 2019

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

  2. 按一下 [Edit > Project Settings > Player],然後設定包含 Android 圖示的分頁,即可設定適當的「最低 API 級別」。在「Other Settings > Identifi」下,選取 18 或更高的 API 級別

Unity 2018

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

  2. 按一下 [Edit > Project Settings > Player],然後設定包含 Android 圖示的分頁,即可設定適當的「最低 API 級別」。在「Other Settings > Identifi」下,選取 18 或更高的 API 級別

Unity 2017

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

  2. 按一下 [Edit > Project Settings > Player],然後設定包含 Android 圖示的分頁,即可設定適當的「最低 API 級別」。在「Other Settings > Identifi」下,選取 18 或更高的 API 級別

執行執行階段檢查

應用程式啟動時,應用程式必須呼叫 Session.CheckApkAvailability() 以檢查裝置是否支援 ARCore;如果是的話,請務必更新已安裝的 Google Play 服務 AR 和 ARCore 裝置設定檔資料。

您的應用程式應符合下列條件:

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

使用者隱私權規定

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

後續步驟

請閱讀範例應用程式和 ARCore for Unity API 參考資料中的程式碼。