2022년 11월, Android용 ARCore SDK (Kotlin/자바)의 카메라 메서드 삭제가 지원 중단됨

2022년 11월, Google Play AR 서비스는 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. AR용 Play 서비스 버전 1.29.0 이상이 대상 기기에 설치되어 있는지 확인합니다.
  2. 앱의 AndroidManifest.xml 파일에서 새 <meta-data> 태그를 기존 <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>
    
  3. 앱을 테스트하고 모든 ARCore 기능이 예상대로 작동하는지 확인합니다.

  4. 테스트가 완료되면 <meta-data> 태그를 삭제합니다. 게시된 앱에 이 태그를 그대로 두면 나중에 예기치 않은 동작이 발생할 수 있습니다.

앱이 정상적으로 작동하면 2022년 11월에 변경사항이 적용될 수 있습니다.

타임라인

기간 이벤트
2020년 11월
(ARCore SDK 버전 1.20.0)
네이티브 API가 지원 중단되었습니다.
대체 네이티브 API를 사용하도록 구현을 업데이트합니다.
2021년 11월 2022년 11월에 영향을 받는 Google Play AR 서비스 구현의 삭제가 대기 중으로 인해 예정된 브레이킹 체인지를 공지합니다.
2022년 11월 영향을 받은 API의 구현을 Google Play AR 서비스에서 삭제합니다.
ARCore 1.20.0 미만 버전을 사용하는 앱에 브레이킹 체인지를 도입했습니다.