Problemas en Android
- En
com.google.mlkit:genai-prompt:1.0.0-beta3ycom.google.mlkit:genai-prompt:1.0.0-beta4, llamar adownload()arroja unjava.lang.NoSuchMethodErrorcuando se completa o cancela la descarga del modelo si la app resuelvekotlinx-coroutinesen 1.10.x o una versión anterior. Como solución alternativa, fija explícitamentekotlinx-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 correcció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 unGenAiExceptionno controlado. Usa una versión posterior (com.google.mlkit:genai-prompt:1.0.0-beta4o posterior). - En el caso del ID de idioma incluido, 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 provoca un MlKitException "rotación no válida" para la API de FaceDetection, ya que
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 incluirá la correcció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 1.0.0-beta08 o posterior de camera-camera2. Puedes usar una versión anterior de camera-camera2 para solucionar 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 ofuscarse con 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 de Camera1, ya que se necesita más tiempo para convertir el formato de la imagen de CameraX y Camera2.
Es posible que las devoluciones de llamada de Task se ejecuten 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 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 del etiquetado de imágenes con formatos de imagen que no sean de mapa de bits, 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, recibirá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 simuladores en Mac con chip 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.