自 2022 年 11 月起,AR 適用的 Google Play 服務將移除與 NDK 相機映像檔和中繼資料相關的已淘汰方法。
在受影響版本的 AR Foundation 中使用這些方法的應用程式,在使用者更新 Google Play 服務 - AR 服務時,可能出現異常行為或當機。
受影響的應用程式
自 2022 年 11 月起,當使用者更新至最新版的 Google Play 服務 - AR 適用時,應用程式可能會停止運作或當機:
- 您的應用程式使用受影響的 SDK 編譯而成
- 您的應用程式使用了下列任一受影響的 API:
如果應用程式是利用 AR Foundation 版本編譯... |
並會使用受影響的 API... | 2022 年 11 月開始的破壞行為 |
---|---|---|
AR Foundation 2.1 (Unity 2019 LTS) |
XRCameraSubsystem.TryGetLatestImage(out XRCameraImage)
|
傳回 false 。 |
修正受影響的應用程式
受影響的應用程式可能會在 2022 年 11 月出現服務中斷情形。為減緩此問題,請更新至您的 Unity 版本支援的最新版 AR Foundation。至少更新至 AR Foundation 4.x 以上版本。
確認受影響的應用程式已解決
在應用程式的 AndroidManifest.xml
中加入特殊的 meta-data
項目,事先模擬 2022 年 11 月的變更,以便測試應用程式:
- 確認目標裝置已安裝 Play 服務 - AR 1.29.0 以上版本。
新增
<meta-data>
標記,做為應用程式自訂AndroidManifest.xml
檔案中現有<application>
元素的子項:<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>
測試應用程式,並驗證所有 ARCore 功能是否正常運作。
測試完成後,請移除
<meta-data>
標記。如果將這個標記保留在發布的應用程式中,可能會導致日後發生非預期的行為。
如果應用程式可以正常執行,表示應用程式已可在 2022 年 11 月因應相關異動。
時間表
時間範圍 | 活動 |
---|---|
2020 年 11 月 (ARCore SDK 1.20.0 版) |
淘汰原生 API。 更新實作方式以使用替代原生 API。 |
2021 年 11 月 | 由於 2022 年 11 月,Google Play 服務中受影響的 API 實作項目即將從 2022 年 11 月移除,因此我們宣布將進行破壞性變更。 |
2022 年 11 月 |
從 Google Play 服務 - AR 適用中移除受影響 API 的實作。 針對使用 ARCore 1.23.0 以下版本的應用程式,導入破壞性變更。 |