Problemas com o Android
- Para o ID de idioma agrupado, o app pode falhar ao fazer upgrade para o AGP 7.0.0 ou mais recente.
Para evitar a falha em
com.google.mlkit:language-id:16.1.1
ou versões anteriores, inclua a regra abaixo: Para evitar a falha em-keep class com.google.mlkit.nl.languageid.internal.LanguageIdentificationJni { *; }
com.google.mlkit:language-id:17.0.0
oucom.google.mlkit:language-id:17.0.1
, inclua a regra abaixo:-keep class com.google.mlkit.nl.languageid.internal.ThickLanguageIdentifier { *; }
- A InputImage construída por Bitmap com um rotationDegrees diferente de zero causa uma
MlKitException de "rotação inválida" para a API FaceDetection desde
com.google.mlkit:face-detection:16.0.5
ecom.google.android.gms:play-services-mlkit-barcode-scanning:16.1.4
. Use uma versão anterior e aguarde a próxima versão, que inclui a correção para esse problema. Os SDKs de leitura de código de barras foram alterados para
com.google.mlkit:barcode-scanning:16.1.0
ecom.google.android.gms:play-services-mlkit-barcode-scanning:16.1.3
e não funcionam em alguns dispositivos com a versão camera-camera2:1.0.0-beta08 ou mais recente. Você pode usar uma versão anterior do camera-camera2 para contornar esse problema. Exemplo: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"
Os métodos nativos podem ser ofuscados por regras personalizadas no
com.google.mlkit:language-id:16.1.1
ou versões anteriores. Inclua a seguinte regra para manter os dados se você encontrar erros comojava.lang.UnsatisfiedLinkError
:-keepclasseswithmembernames class com.google.mlkit.nl.languageid.internal.LanguageIdentificationJni { native <methods>; }
Para as APIs de reconhecimento de texto, rotulagem de imagens e detecção e rastreamento de objetos, o desempenho com o CameraX e o Camera2 ainda não é igual ao do Camera1, porque leva mais tempo para fazer a conversão de formato de imagem com o CameraX e o Camera2.
Os callbacks de tarefa podem ser executados depois que a atividade ou o fragmento em que foram registrados foram destruídos. Isso pode levar a uma exceção se o callback tentar acessar um detector que foi fechado nesse meio tempo. Se você estiver usando o ML Kit em uma atividade, poderá registrar um listener no escopo da atividade, que será removido automaticamente quando a atividade for interrompida. Se você estiver usando o ML Kit em um fragmento ou outro ambiente, poderá fornecer um executor personalizado que encerra a execução quando o fragmento é destruído. Consulte
ScopedExecutor.Java
no Guia de início rápido da Vision para conferir um exemplo.Para a rotulagem de imagens com formatos de imagem diferentes de bitmap, a variante agrupada tem melhor desempenho do que a variante "slim", que depende do Google Play Services.
Para tinta digital
com.google.mlkit:digital-ink-recognition:17.0.0
ou versões anteriores e extração de entidadecom.google.mlkit:entity-extraction:16.0.0-beta2
ou versões anteriores, você vai receber a seguinte exceção de execução se definirtargetSdkVersion
como 31 e executar no Android S. Esse problema foi corrigido nas versões mais recentes.Targeting S+ (version 31 and above) requires that one of
FLAG_IMMUTABLE
orFLAG_MUTABLE
be specified when creating aPendingIntent
. AndroidRuntime: Strongly consider usingFLAG_IMMUTABLE
, only useFLAG_MUTABLE
if some functionality depends on thePendingIntent
being mutable, e.g. if it needs to be used with inline replies or bubbles.Se você preferir usar versões mais antigas, defina
targetSdkVersion
como menos de 31 ou adicione o seguinte àbuild.gradle
como solução alternativa.// For apps targeting Android S+, add the following constraints { implementation 'androidx.work:work-runtime:2.7.0-alpha04' }
Problemas com o iOS
- Não há suporte para simuladores em Macs com M1.
- O simulador X86_64 não tem suporte para a tradução
'GoogleMLKit/Translate', '4.0.0'
ou mais recente e a resposta inteligente'GoogleMLKit/SmartReply', '4.0.0'
ou mais recente.