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 usen estos métodos en las versiones afectadas del SDK de ARCore comiencen a comportarse de manera diferente o fallan cuando los usuarios actualizan los Servicios de Google Play para RA.

Apps afectadas

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

  1. Tu app se compiló con un SDK afectado
  2. Tu app usa alguna de las siguientes APIs afectadas:
Si tu app se compiló con la versión
del SDK de ARCore…
Y usa las APIs afectadas… Comportamiento de error a partir de noviembre de 2022
1.22.0 o versiones anteriores ArImage_getNdkImage()
(se quitó en el SDK de ARCore 1.23.0)
Muestra NULL en la estructura AImage resultante.
1.22.0 o versiones anteriores ArImage_getNdkCameraMetadata()
(se quitó en el 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. Para mitigar esto, usa reemplazos directos para los métodos afectados:

Verifica que la app afectada esté corregida

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 el dispositivo de destino tenga instalada la versión 1.29.0 o posterior de Servicios de Play para RA.
  2. Agrega una nueva etiqueta <meta-data> 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, es posible que se genere un comportamiento inesperado en el futuro.

Si la app funciona con normalidad, significa que está lista para los cambios de noviembre de 2022.

Cronograma

Período Eventos
Noviembre de 2020
(versión 1.20.0 del SDK de ARCore)
Dar de baja las APIs afectadas y presentar alternativas de API integradas
Febrero de 2021
(versión 1.23.0 del SDK de ARCore)
Se quitaron las firmas de las APIs que habían dejado de estar disponibles del SDK de ARCore.
Noviembre de 2021 Anunciar un cambio rotundo 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 Quita la implementación de las APIs afectadas de los Servicios de Google Play para RA.
Se introdujo un cambio rotundo para las apps que usan versiones de ARCore anteriores a la 1.23.0.