Znane problemy

Problemy z Androidem

  • W przypadku złączonego identyfikatora języka aplikacja może się zawiesić podczas uaktualniania do AGP 7.0.0 lub nowszej. Aby uniknąć awarii w wersji com.google.mlkit:language-id:16.1.1 lub wcześniejszej, dodaj tę regułę:
    -keep class com.google.mlkit.nl.languageid.internal.LanguageIdentificationJni { *; }
    Aby uniknąć awarii w com.google.mlkit:language-id:17.0.0 lub com.google.mlkit:language-id:17.0.1, dodaj tę regułę:
    -keep class com.google.mlkit.nl.languageid.internal.ThickLanguageIdentifier { *; }
  • Obiekt InputImage utworzony przez Bitmap z niezerowym parametrem rotationDegrees powoduje błąd „invalid rotation” (nieprawidłowa rotacja) w przypadku interfejsu FaceDetection API od wersji com.google.mlkit:face-detection:16.0.5com.google.android.gms:play-services-mlkit-barcode-scanning:16.1.4. Użyj wcześniejszej wersji i poczekaj na następną wersję, która zawiera rozwiązanie tego problemu.
  • Pakiety SDK BarcodeScanning od wersji com.google.mlkit:barcode-scanning:16.1.0 do com.google.android.gms:play-services-mlkit-barcode-scanning:16.1.3 nie działają na niektórych urządzeniach z wersją camera-camera2:1.0.0-beta08 lub nowszą. Aby obejść ten problem, możesz użyć starszej wersji biblioteki 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ć zaciemniane przez reguły niestandardowe w wersji com.google.mlkit:language-id:16.1.1 lub wcześniejszej. Jeśli napotkasz błędy takie jak java.lang.UnsatisfiedLinkError, dodaj to regułę, aby zachować te elementy:

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

  • W przypadku interfejsów API rozpoznawania tekstu, etykietowania obrazów oraz wykrywania i śledzenia obiektów wydajność interfejsów CameraX i Camera2 nadal nie dorównuje interfejsowi Camera1, ponieważ konwersja formatu obrazu w przypadku interfejsów CameraX i Camera2 zajmuje więcej czasu.

  • Task Zwroty wywołania mogą być wykonywane po usunięciu aktywności lub fragmentu, w których zostały zarejestrowane. Może to spowodować wyjątek, jeśli funkcja wywołania zwrotnego próbuje uzyskać dostęp do detektora, który został zamknięty. Jeśli używasz ML Kit w ramach aktywności, możesz zarejestrować słuchacza ograniczonego do aktywności, który jest automatycznie usuwany po zatrzymaniu aktywności. Jeśli używasz ML Kit w Fragmentach lub innym środowisku, możesz podać niestandardowy wykonawca, który zatrzymuje wykonywanie kodu po usunięciu Fragmentu. Przykładem jest polecenie ScopedExecutor.Java w Krótkim wprowadzeniu do Vision.

  • W przypadku etykietowania obrazów z formatami obrazu innymi niż Bitmap wersja z pakietem ma lepszą skuteczność niż wersja „cienka”, która zależy od Usług Google Play.

  • W przypadku cyfrowego atramentu w wersji com.google.mlkit:digital-ink-recognition:17.0.0 lub starszej oraz wyodrębniania informacji o podmiocie w wersji com.google.mlkit:entity-extraction:16.0.0-beta2 lub starszej otrzymasz ten wyjątek czasu wykonywania, jeśli ustawisz wartość targetSdkVersion na 31 i uruchomisz aplikację 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 naszych najnowszych wersjach.

    Jeśli wolisz używać starszych wersji, możesz ustawić wartość targetSdkVersion na mniejszą niż 31 lub dodać do build.gradle następujący kod jako obejście.

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

Problemy z iOS

  • Symulatory na Macu z procesorem M1 nie są obsługiwane.
  • Symulacja X86_64 nie jest obsługiwana w przypadku usługi tłumaczenia w wersji 'GoogleMLKit/Translate', '4.0.0' lub nowszej oraz inteligentnych odpowiedzi w wersji 'GoogleMLKit/SmartReply', '4.0.0' lub nowszej.