Problemas en Android
- En el caso del ID de idioma incluido, es posible que la app falle cuando se actualice a AGP 7.0.0 o versiones posteriores.
Para evitar la falla en
com.google.mlkit:language-id:16.1.1o versiones anteriores, incluye la siguiente regla: Para evitar la falla en-keep class com.google.mlkit.nl.languageid.internal.LanguageIdentificationJni { *; }com.google.mlkit:language-id:17.0.0ocom.google.mlkit:language-id:17.0.1, incluye la siguiente regla:-keep class com.google.mlkit.nl.languageid.internal.ThickLanguageIdentifier { *; } - InputImage construido por Bitmap con un rotationDegrees distinto de cero causa una MlKitException de "rotación no válida" para la API de FaceDetection desde
com.google.mlkit:face-detection:16.0.5ycom.google.android.gms:play-services-mlkit-barcode-scanning:16.1.4. Usa una versión anterior y espera nuestro próximo lanzamiento, que incluye la solución para este problema. Los SDKs de BarcodeScanning anteriores a
com.google.mlkit:barcode-scanning:16.1.0ycom.google.android.gms:play-services-mlkit-barcode-scanning:16.1.3no funcionan en algunos dispositivos que ejecutan la versión camera-camera2:1.0.0-beta08 o posterior. Puedes usar 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"
Los métodos nativos pueden estar ofuscados por reglas personalizadas en
com.google.mlkit:language-id:16.1.1o versiones anteriores. Incluye la siguiente regla para conservarlos si encuentras errores comojava.lang.UnsatisfiedLinkError:-keepclasseswithmembernames class com.google.mlkit.nl.languageid.internal.LanguageIdentificationJni { native <methods>; }En el caso de las APIs de Text Recognition, Image Labeling y Object Detection and Tracking, el rendimiento con CameraX y Camera2 aún no está a la par con Camera1, ya que lleva más tiempo realizar la conversión de formato para la imagen de CameraX y Camera2.
Es posible que las devoluciones de llamada de tareas se ejecuten después de que se destruya la actividad o el fragmento en el 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 detenga la ejecución cuando se destruya el fragmento. Consulta
ScopedExecutor.Javaen la Guía de inicio rápido de Vision para ver un ejemplo.En el caso de Image Labeling con formatos de imagen que no sean Bitmap, la variante incluida tiene un mejor rendimiento que la variante "delgada" que depende de los Servicios de Google Play.
En el caso de Digital Ink
com.google.mlkit:digital-ink-recognition:17.0.0o versiones anteriores y Entity Extractioncom.google.mlkit:entity-extraction:16.0.0-beta2o versiones anteriores, obtendrás la siguiente excepción de tiempo de ejecución si configurastargetSdkVersionen 31 y ejecutas en Android S. Este problema se corrigió en nuestras versiones más recientes.Targeting S+ (version 31 and above) requires that one of
FLAG_IMMUTABLEorFLAG_MUTABLEbe specified when creating aPendingIntent. AndroidRuntime: Strongly consider usingFLAG_IMMUTABLE, only useFLAG_MUTABLEif some functionality depends on thePendingIntentbeing mutable, e.g. if it needs to be used with inline replies or bubbles.Si prefieres usar versiones anteriores, puedes configurar
targetSdkVersionen menos de 31 o agregar lo siguiente a tubuild.gradlecomo solución alternativa.// For apps targeting Android S+, add the following constraints { implementation 'androidx.work:work-runtime:2.7.0-alpha04' }
Problemas en iOS
- No se admiten simuladores en Mac basados en M1.
- No se admite el simulador X86_64 para Translation
'GoogleMLKit/Translate', '4.0.0'o versiones posteriores, ni Smart Reply'GoogleMLKit/SmartReply', '4.0.0'o versiones posteriores.