Google Play 服務 - AR 適用將於 2022 年 11 月移除已淘汰的方法 與 NDK 相機映像檔和中繼資料有關的資訊
應用程式在受影響的 ARCore SDK 可能會開始 在使用者更新「Google Play 服務 - AR 適用」時的運作方式不同或當機。
受影響的應用程式
自 2022 年 11 月起,當使用者更新應用程式,應用程式可能會停止運作或異常終止 升級至最新版本的 Google Play 服務 - AR 適用中,前提是:
- 透過受影響的 SDK 編譯應用程式
- 應用程式會使用下列任何受影響的 API:
如果您的應用程式是以 編譯而成 ARCore SDK 版本... |
並使用受影響的 API... | 2022 年 11 月開始的破壞行為 |
---|---|---|
1.22.0 以下版本 | ArImage_getNdkImage() (已於 ARCore SDK 1.23.0 中移除) |
在產生的 AImage 結構中傳回 NULL 。 |
1.22.0 以下版本 | ArImage_getNdkCameraMetadata() (已於 ARCore SDK 1.23.0 中移除) |
在產生的 ACameraMetadata 結構中傳回 NULL 。 |
修正受影響的應用程式
2022 年 11 月起,受影響的應用程式可能會中斷。為了避免這種情況 針對受影響的方法使用直接取代:
ArImage_getNdkImage()
和AImage_*
方法:使用ArImage
的對應方法。例如:ArImage_getNdkCameraMetadata()
:改用ArImageMetadata_getConstEntry()
確認受影響的應用程式已修正
在應用程式的 AndroidManifest.xml
中新增特殊的 meta-data
項目,預先模擬 2022 年 11 月的異動,測試應用程式:
- 確認已在目標裝置上安裝 Play 服務 - AR 適用 1.29.0 以上版本。
將新的
<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>
測試應用程式,確認所有 ARCore 功能都能正常運作 。
測試完成後,請移除
<meta-data>
標記。正在離開這個代碼 在您發布的應用程式中,可能會導致
如果應用程式可正常運作,表示應用程式已準備好在 2022 年 11 月進行變更。
時間軸
期間 | 活動 |
---|---|
2020 年 11 月 (ARCore SDK 1.20.0 版) |
淘汰受影響的 API、導入置入式 API 替代方案。 |
2021 年 2 月 (ARCore SDK 1.23.0 版) |
從 ARCore SDK 中移除先前淘汰的 API 簽名。 |
2021 年 11 月 | 宣布即將移除實作項目,導致日後的破壞性變更公告 。 |
2022 年 11 月 |
移除受影響 API 的實作:
「Google Play 服務 - AR 適用」。 針對以下日期前使用 ARCore 版本的應用程式導入破壞性變更: 1.23.0. |