Problemas en Android
- En
com.google.mlkit:genai-prompt:1.0.0-beta3ycom.google.mlkit:genai-prompt:1.0.0-beta4, llamar adownload()arroja unajava.lang.NoSuchMethodErrorcuando se completa o se cancela la descarga del modelo si la app resuelvekotlinx-coroutinesen la versión 1.10.x o una anterior. Como solución alternativa, fija de forma explícitakotlinx-coroutines-androiden1.11.0o una versión posterior en tus dependencias de Gradle hasta que proporcionemos una corrección en la próxima versión. - En
com.google.mlkit:genai-prompt:1.0.0-beta3ycom.google.mlkit:genai-prompt:1.0.0-beta4, la ejecución de la inferencia con el almacenamiento en caché de prefijos falla en los modelos nano-v4 cuandoModelConfigse establece enModelPreference.FAST. Como solución alternativa, omite el parámetro de configuraciónModelConfigpara usar la configuración predeterminada hasta que proporcionemos una solución en la próxima versión. - En
com.google.mlkit:genai-prompt:1.0.0-beta3, llamar acheckStatus()en dispositivos que no son Pixel arroja unaGenAiExceptionno controlada. Usa una versión posterior (com.google.mlkit:genai-prompt:1.0.0-beta4o posterior). - En el caso del ID de idioma empaquetado, es posible que la app falle cuando se actualice a AGP 7.0.0 o una versión posterior.
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 a que se lance la próxima versión, que incluirá la corrección de este problema. Los SDK 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"
Es posible que las reglas personalizadas en
com.google.mlkit:language-id:16.1.1o versiones anteriores ofusquen los métodos nativos. Incluye la siguiente regla para conservarlas si encuentras errores comojava.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á a la par de Camera1, ya que lleva más tiempo realizar la conversión de formato de imagen de CameraX y Camera2.
Las devoluciones de llamada de Task podrían ejecutarse después de que se destruya la actividad o el fragmento en el que se registraron. Esto podría generar una excepción si la devolución de llamada intenta acceder a un detector que se cerró mientras tanto. Si usas el 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.Para el etiquetado de imágenes con formatos de imagen que no sean de mapa de bits, 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.0o versiones anteriores y Extracción de entidadescom.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 establecer
targetSdkVersionen un valor inferior a 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 los simuladores en Mac basadas en M1.
- El simulador X86_64 no es compatible con Translation
'GoogleMLKit/Translate', '4.0.0'o versiones posteriores, ni con Respuesta inteligente'GoogleMLKit/SmartReply', '4.0.0'o versiones posteriores.