2022 年 11 月已淘汰為 Android 適用的 ARCore SDK (Kotlin/Java) 移除相機方法

Google Play 服務 - AR 適用將於 2022 年 11 月移除已淘汰的方法 與 NDK 相機映像檔和中繼資料有關的資訊

應用程式在受影響的 ARCore SDK 可能會開始 在使用者更新「Google Play 服務 - AR 適用」時的運作方式不同或當機。

受影響的應用程式

自 2022 年 11 月起,當使用者更新應用程式,應用程式可能會停止運作或異常終止 升級至最新版本的 Google Play 服務 - AR 適用中,前提是:

  1. 透過受影響的 SDK 編譯應用程式
  2. 應用程式會使用下列任何受影響的 API:
如果您的應用程式是以
編譯而成 ARCore SDK 版本...
並使用受影響的 API... 2022 年 11 月開始的破壞行為
1.19.0 以下版本 Frame.getImageMetadata() 擲回 IllegalArgumentException
1.10.0 以下版本 Frame.acquireCameraImage() 傳回 0x0 大小的圖片。

修正受影響的應用程式

2022 年 11 月起,受影響的應用程式可能會中斷。為了避免這種情況 使用最新版的 ARCore SDK 重新建構應用程式。您至少必須擁有 請升級至 ARCore SDK 1.20.0 以上版本。

確認受影響的應用程式已修正

在應用程式的 AndroidManifest.xml 中新增特殊的 meta-data 項目,預先模擬 2022 年 11 月的異動,測試應用程式:

  1. 確認已在目標裝置上安裝 Play 服務 - AR 適用 1.29.0 以上版本。
  2. 將新的 <meta-data> 標記新增為應用程式現有 <application> 元素的子項 AndroidManifest.xml 個檔案 :

    <application …>
      …
    
      <!--
           Simulate the November 2022 changes in advance.
           IMPORTANT: Remove this tag when testing is completed.
           Do not include this tag in published versions of your app.
      -->
      <meta-data android:name="com.google.ar.core.session_settings"
                 android:value="camera_stack_option,unified_mono" />
    </application>
    
  3. 測試應用程式,確認所有 ARCore 功能都能正常運作 。

  4. 測試完成後,請移除 <meta-data> 標記。正在離開這個代碼 在您發布的應用程式中,可能會導致

如果應用程式可正常運作,表示應用程式已準備好在 2022 年 11 月進行變更。

時間軸

期間 活動
2020 年 11 月
(ARCore SDK 1.20.0 版)
淘汰原生 API。
更新實作方式以使用替代的原生 API。
2021 年 11 月 宣布即將移除實作項目,導致日後的破壞性變更公告 。
2022 年 11 月 移除受影響 API 的實作: 「Google Play 服務 - AR 適用」。
針對以下日期前使用 ARCore 版本的應用程式導入破壞性變更: 1.20.0.