Errores conocidos

Problemas de Android

  • Para el ID de idioma del paquete, la app puede fallar cuando se actualiza a AGP 7.0.0 o una versión posterior. Para evitar una falla en com.google.mlkit:language-id:16.1.1 o en versiones anteriores, incluye la siguiente regla:
    -keep class com.google.mlkit.nl.languageid.internal.LanguageIdentificationJni { *; }
    
    Para evitar una falla en com.google.mlkit:language-id:17.0.0 o com.google.mlkit:language-id:17.0.1, incluye la siguiente regla:
    -keep class com.google.mlkit.nl.languageid.internal.ThickLanguageIdentifier { *; }
    
  • InputImage construido por un mapa de bits con un valor predeterminado de "rotación" no cero genera una "rotación no válida" para la API de FaceDetection desde com.google.mlkit:face-detection:16.0.5 y com.google.android.gms:play-services-mlkit-barcode-scanning:16.1.4 Usa una versión anterior y espera a nuestra próxima versión que incluya la solución para este problema.
  • Los SDK de BarcodeScanning a partir de com.google.mlkit:barcode-scanning:16.1.0 y com.google.android.gms:play-services-mlkit-barcode-scanning:16.1.3 no funcionan en algunos dispositivos que ejecutan la versión Camera-camera2:1.0.0-beta08 o versiones posteriores. Puedes utilizar una versión anterior de camera-camera2 para evitar este problema. Por ejemplo:

    implementation "androidx.camera:camera-core:1.0.0-beta07"
    implementation "androidx.camera:camera-camera2:1.0.0-beta07"
    implementation "androidx.camera:camera-view:1.0.0-alpha14"
    implementation "androidx.camera:camera-extensions:1.0.0-alpha14"
    implementation "androidx.camera:camera-lifecycle:1.0.0-beta07"
    

  • Es posible que las reglas personalizadas de com.google.mlkit:language-id:16.1.1 o anteriores ofusquen los métodos nativos. Incluye la siguiente regla para conservarlas si encuentras errores como java.lang.UnsatisfiedLinkError:

    -keepclasseswithmembernames class com.google.mlkit.nl.languageid.internal.LanguageIdentificationJni {
      native <methods>;
    }

  • En el caso de las APIs de reconocimiento de texto, etiquetado de imágenes y detección y seguimiento de objetos, el rendimiento con CameraX y Camera2 aún no está al mismo nivel que Camera1, ya que lleva más tiempo realizar la conversión de formato de la imagen desde CameraX y Camera2.

  • Es posible que se ejecuten las devoluciones de llamada de Task después de que se destruya la actividad o el fragmento en los que se registraron. Esto puede generar una excepción si la devolución de llamada intenta acceder a un detector que se cerró mientras tanto. Si usas ML Kit en una actividad, puedes registrar un objeto de escucha con alcance de actividad, que se quita automáticamente cuando se detiene la actividad. Si usas ML Kit en un fragmento o en otro entorno, puedes proporcionar un ejecutor personalizado que cierre la ejecución cuando se destruye el fragmento. Consulta ScopedExecutor.Java en la Guía de inicio rápido de Vision para ver un ejemplo.

  • Para el etiquetado de imágenes con formatos de imagen distintos de Bitmap, la variante empaquetada tiene un mejor rendimiento que la variante "delgada" que depende de los Servicios de Google Play.

  • Para Digital Ink com.google.mlkit:digital-ink-recognition:17.0.0 o versiones anteriores y Entity Extraction com.google.mlkit:entity-extraction:16.0.0-beta2 o versiones anteriores, obtendrás la siguiente excepción de tiempo de ejecución si configuras targetSdkVersion en 31 y ejecutas Android S.

    Targeting S+ (version 31 and above) requires that one of FLAG_IMMUTABLE or FLAG_MUTABLE be specified when creating a PendingIntent.
    AndroidRuntime: Strongly consider using FLAG_IMMUTABLE, only use FLAG_MUTABLE if some functionality depends on the PendingIntent being mutable, e.g. if it needs to be used with inline replies or bubbles.
    
    Este problema se corrigió en nuestras versiones más recientes.

    Si prefieres usar versiones anteriores, puedes configurar targetSdkVersion en menos de 31 o agregar lo siguiente a build.gradle como solución alternativa.

    // For apps targeting Android S+, add the following
    constraints {
      implementation 'androidx.work:work-runtime:2.7.0-alpha04'
    }

Problemas con iOS

  • No se admiten simuladores en Mac con M1.
  • El simulador de X86_64 no es compatible con Translation 'GoogleMLKit/Translate', '4.0.0' ni versiones posteriores, y Respuesta inteligente 'GoogleMLKit/SmartReply', '4.0.0' ni versiones posteriores.