En noviembre de 2022, se dejan de usar los métodos de cámara para el SDK de ARCore para el NDK de Android (C)

En noviembre de 2022, los Servicios de Google Play para RA quitarán los métodos obsoletos relacionados con las imágenes y los metadatos de la cámara del NDK.

Es posible que las apps que usan estos métodos en las versiones afectadas del SDK de ARCore comiencen a comportarse de manera diferente o fallen cuando los usuarios actualicen los Servicios de Google Play para RA.

Apps afectadas

A partir de noviembre de 2022, tu app puede dejar de funcionar o fallar cuando los usuarios actualicen a la versión más reciente de Servicios de Google Play para RA en los siguientes casos:

  1. Tu app se compiló con un SDK afectado
  2. Tu app usa cualquiera de las siguientes APIs afectadas:
Si tu app se compiló con
versión del SDK de ARCore...
Y usa las APIs afectadas... Comportamiento rotundo a partir de noviembre de 2022
1.22.0 o versiones anteriores ArImage_getNdkImage()
(se quitó del SDK de ARCore 1.23.0)
Muestra NULL en la estructura AImage resultante.
1.22.0 o versiones anteriores ArImage_getNdkCameraMetadata()
(se quitó del SDK de ARCore 1.23.0)
Muestra NULL en la estructura ACameraMetadata resultante.

Cómo corregir las apps afectadas

Es posible que las apps afectadas experimenten fallas en noviembre de 2022. A fin de mitigar esto, usa reemplazos directos para los métodos afectados:

Verifica que se haya corregido la app afectada

Para probar la app, simula los cambios de noviembre de 2022 con anticipación. Para ello, agrega una entrada meta-data especial al AndroidManifest.xml de tu app:

  1. Asegúrate de que la versión 1.29.0 o una posterior de Servicios de Play para RA esté instalada en el dispositivo de destino.
  2. Agrega una etiqueta <meta-data> nueva como elemento secundario del elemento <application> existente en el archivo AndroidManifest.xml de la app:

    <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. Prueba tu app y verifica que todas las funciones de ARCore funcionen como se espera.

  4. Quita la etiqueta <meta-data> cuando se complete la prueba. Si dejas esta etiqueta en tu app publicada, podrías generar un comportamiento inesperado en el futuro.

Si la app funciona normalmente, estará lista para los cambios de noviembre de 2022.

Cronograma

Período Eventos
Noviembre de 2020
(versión 1.20.0 del SDK de ARCore)
Las APIs afectadas dejaron de estar disponibles y se agregaron alternativas de API directas
Febrero de 2021
(versión 1.23.0 del SDK de ARCore)
Quita las firmas de APIs obsoletas anteriormente del SDK de ARCore.
Noviembre de 2021 Anunciar un cambio rotundo en el futuro debido a la eliminación pendiente de la implementación de las APIs afectadas de los Servicios de Google Play para RA en noviembre de 2022.
Noviembre de 2022 Se quitó la implementación de las APIs afectadas de los Servicios de Google Play para RA.
Introduce cambios rotundos para las apps que usan versiones de ARCore anteriores a la 1.23.0.