ARCore 64 位要求

2020年八月,谷歌播放服務AR(ARCORE)為32位僅在某些64位應用程序的設備不再支持。在即將發布的 ARCore 版本中,對剩餘 64 位設備上僅支持 32 位 ARCore 的應用程序的支持可能會被移除,恕不另行通知。在 32 位設備上運行的僅支持 32 位 ARCore 的應用程序不受影響並繼續受支持。

如果你發布了32位只(例如, armeabi-v7a )啟用了ARCORE-應用版本沒有發布相應的64位( arm64-v8a 64位器件)版本,則必須用兼容的更新您的應用64 位設備的 64 位版本。

32位只啟用ARCORE未更新,將無法創建一個會話的Arcore並試圖啟動一個增強現實(AR),受影響的64位設備會話時可能會崩潰的應用程序

如果你設置android:use32bitAbi="true"在應用程序的屬性AndroidManifest.xml ,您的應用程序將只使用32位庫。您應用中的任何 AR 體驗都將嘗試在 32 位模式下使用 ARCore。然而,32位的庫將不會出現在谷歌Play服務為現實業務上的一些64位的設備。如果沒有這些庫,您的應用將無法創建 ARCore 會話,並且在這些受影響的 64 位設備上嘗試啟動增強現實 (AR) 會話時可能會崩潰。這會影響 WebView 組件內的原生 AR 體驗和基於 WebXR 的 AR 體驗。

Google Play 商店 64 位要求

上一節中描述的 ARCore 64 位要求適用於所有 64 位設備,無論 Android 版本和 API 級別如何。這個要求是不同的,並沒有涉及到谷歌播放64位的要求,即開始生效。2019年8月1,這是在應用程序釋放水平評估中分發到運行Android 9餡餅設備和僅適用於APK或應用程序包(API 級別 28)或更高版本。

了解 ARCore ABI 支持

ARCORE使您能夠構建支持以下應用程序的Android的ABI

  • 32位(例如, armeabi-v7a )和64位( arm64-v8a )應用包含的目標物理ARCORE支持的設備

  • 32位( x86 )和64位( x86_64 )應用程式內該運行Android模擬器

當你建立一個支持ARCORE-應用程序,Android編譯系統包括一個或多個ARCORE本地庫( lib/…/libarcore_sdk*.so )針對Android的ABI針對您的應用。

之前僅支持 32 位 ARCore 的應用程序可以在 32 位和 64 位設備上運行。八月2020 AR(ARCORE)谷歌遊戲服務停止包括32位上的一些64位的設備機庫,此時僅32位啟用ARCORE,應用程序不再能夠對受影響的64位設備上運行。在未來的版本中,對僅支持 32 位 ARCore 的應用程序的支持也可能會從其餘 64 位設備中刪除,恕不另行通知。

32位只ARCORE啟用未更新,將無法創建一個會話,並試圖對受影響的64位器件啟動一個增強現實(AR)會話時可能會崩潰,特別是應用程序

ARCore SDK會話創建失敗詳情
適用於 Android 的 ARCore SDK (NDK) ArSession_createArSession_createWithFeatures將返回AR_ERROR_FATAL
適用於 Android (Java) 的 ARCore SDK會話構造, Session(Context)Session(Context, Set<Session.Feature>)將拋出FatalException
適用於 Unity 的 ARCore SDK當您啟用ARCoreSession組件,這通常是在發現ARCORE設備預製,ARCORE將無法創建一個會話的Arcore和Session.StatusSessionStatus.FatalError
AR 基金會 (Unity)
+ ARCORE XR插件
當應用程序嘗試啟動 AR 會話時,應用程序將停止渲染(黑屏),這是由於主線程在嘗試加載不存在的 32 位 ARCore 原生庫時崩潰。

確定您的應用程序是否必須更新

要檢查您發布的應用程序是否包含支持 64 位設備所需的原生 ARCore 庫:

  1. 打開谷歌遊戲控制台

  2. 選擇支持 ARCore 的應用。

  3. 擴大應用的活性劑的釋放,以驗證本機平台包括64位( arm64-v8a )的支持。

更新您的應用以支持 64 位設備

要更新現有的僅支持 32 位 ARCore 的應用程序以包含 64 位本機庫:

  1. 更新項目中使用最新的ARCORE SDK

  2. 構建應用程序,並使用發布谷歌遊戲控制台

谷歌比賽將驗證您的應用是否符合谷歌Play商店的64位的要求,以前生效的2019年8月1日,為了確保您能ARCORE,應用程序包括64位( arm64-v8a所有64位)支持設備,無論 Android 版本或 API 級別如何。