Znane problemy

Problemy z Androidem

  • W przypadku identyfikatora języka w pakiecie aplikacja może ulec awarii podczas aktualizacji do wersji AGP 7.0.0 lub nowszej. Aby uniknąć awarii w programie com.google.mlkit:language-id:16.1.1 lub starszym, uwzględnij tę regułę:
    -keep class com.google.mlkit.nl.languageid.internal.LanguageIdentificationJni { *; }
    
    Aby uniknąć awarii w aplikacjach com.google.mlkit:language-id:17.0.0 lub com.google.mlkit:language-id:17.0.1, dodaj regułę poniżej:
    -keep class com.google.mlkit.nl.languageid.internal.ThickLanguageIdentifier { *; }
    
  • Obraz wejściowy utworzony przez bitmapę z obrotem o wartości innej niż 0, powoduje wystąpienie błędu MlKitException dla interfejsu FaceDetection API od com.google.mlkit:face-detection:16.0.5 i com.google.android.gms:play-services-mlkit-barcode-scanning:16.1.4. Użyj wcześniejszej wersji i poczekaj na następną wersję, która będzie zawierać poprawkę tego problemu.
  • Pakiety SDK do skanowania kodów BarcodeScanning w wersjach com.google.mlkit:barcode-scanning:16.1.0 i com.google.android.gms:play-services-mlkit-barcode-scanning:16.1.3 nie działają na niektórych urządzeniach z aparatem Camera-camera2:1.0.0-beta08 lub nowszym. Aby obejść ten problem, możesz użyć wcześniejszej wersji kamery Camera-camera2. Na przykład:

    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"
    

  • Metody natywne mogą być zaciemnione przez reguły niestandardowe w wersji com.google.mlkit:language-id:16.1.1 lub starszej. Uwzględnij tę regułę, aby je zachować w przypadku wystąpienia błędów takich jak java.lang.UnsatisfiedLinkError:

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

  • W przypadku interfejsów API do rozpoznawania tekstu, oznaczania obrazów oraz wykrywania obiektów i śledzenia wydajność usług CameraX i Aparat2 nadal nie jest na równi z Aparatem1, ponieważ konwersja formatu zdjęć z Aparatów X i Aparat2 wymaga więcej czasu.

  • Wywołania zwrotne zadania mogą być wykonywane po zniszczeniu aktywności lub fragmentu, w którym zostały zarejestrowane. Może to stanowić wyjątek, jeśli wywołanie zwrotne próbuje uzyskać dostęp do wzorca, który w międzyczasie został zamknięty. Jeśli używasz ML Kit w aktywności, możesz zarejestrować detektor ograniczony do aktywności, który jest automatycznie usuwany po zatrzymaniu aktywności. Jeśli używasz pakietu ML Kit w fragmencie lub innym środowisku, możesz podać niestandardowego wykonawcy, który wyłącza wykonanie po zniszczeniu fragmentu. Przykład znajdziesz w sekcji ScopedExecutor.Java w krótkim wprowadzeniu do Vision.

  • W przypadku oznaczania obrazów etykietami w formatach innych niż bitmapa pakietowa wersja zapewnia większą skuteczność niż „cienki” wariant, który zależy od Usług Google Play.

  • W przypadku usługi Digital Ink w wersji com.google.mlkit:digital-ink-recognition:17.0.0 lub starszej oraz ekstrakcji encji com.google.mlkit:entity-extraction:16.0.0-beta2 lub starszej otrzymasz poniższy wyjątek w czasie działania, jeśli ustawisz targetSdkVersion na 31 i uruchomisz go na Androidzie 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.
    
    Ten problem został rozwiązany w najnowszych wersjach.

    Jeśli wolisz używać starszych wersji, możesz ustawić targetSdkVersion na wartość mniejszą niż 31 lub dodać ten kod do build.gradle, aby obejść ten problem.

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

Problemy z iOS

  • Symulatory na komputerach Mac z systemem M1 nie są obsługiwane.
  • Symulator X86_64 nie jest obsługiwany w przypadku tłumaczenia 'GoogleMLKit/Translate', '4.0.0' i nowszych oraz Inteligentnej odpowiedzi w wersji 'GoogleMLKit/SmartReply', '4.0.0' i nowszych.