Problemy z Androidem
- W przypadku pakietu Language ID aplikacja może się zawiesić podczas uaktualniania do wtyczki Androida do obsługi Gradle w wersji 7.0.0 lub nowszej.
Aby uniknąć awarii w
com.google.mlkit:language-id:16.1.1lub starszej wersji, dodaj regułę poniżej: Aby uniknąć awarii w-keep class com.google.mlkit.nl.languageid.internal.LanguageIdentificationJni { *; }com.google.mlkit:language-id:17.0.0lubcom.google.mlkit:language-id:17.0.1, dodaj regułę poniżej:-keep class com.google.mlkit.nl.languageid.internal.ThickLanguageIdentifier { *; } - InputImage utworzony przez Bitmap z niezerowym rotationDegrees powoduje wyjątek „invalid rotation” MlKitException w przypadku interfejsu FaceDetection API, ponieważ
com.google.mlkit:face-detection:16.0.5icom.google.android.gms:play-services-mlkit-barcode-scanning:16.1.4. Użyj starszej wersji i poczekaj na następną wersję, która zawiera poprawkę tego problemu. Zestawy SDK do skanowania kodów kreskowych starsze niż
com.google.mlkit:barcode-scanning:16.1.0icom.google.android.gms:play-services-mlkit-barcode-scanning:16.1.3nie 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 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
com.google.mlkit:language-id:16.1.1lub starszej wersji. Jeśli występują błędy takie jakjava.lang.UnsatisfiedLinkError, dodaj tę regułę, aby je zachować:-keepclasseswithmembernames class com.google.mlkit.nl.languageid.internal.LanguageIdentificationJni { native <methods>; }W przypadku interfejsów Text Recognition, Image Labeling oraz Object Detection and Tracking API skuteczność w CameraX i Camera2 nadal nie jest taka sama jak w Camera1, ponieważ konwersja formatu obrazu z CameraX i Camera2 trwa dłużej.
Wywołania zwrotne zadań mogą być wykonywane po zniszczeniu aktywności lub fragmentu, w którym zostały zarejestrowane. Może to spowodować wyjątek, jeśli wywołanie zwrotne próbuje uzyskać dostęp do detektora, który został w międzyczasie zamknięty. Jeśli używasz ML Kit w aktywności, możesz zarejestrować odbiornik o zakresie aktywności, który jest automatycznie usuwany po zatrzymaniu aktywności. Jeśli używasz ML Kit we fragmencie lub innym środowisku, możesz podać niestandardowy wykonawca, który zamyka wykonanie po zniszczeniu fragmentu. Przykład znajdziesz w krótkim wprowadzeniu do Vision.
ScopedExecutor.JavaW przypadku etykietowania obrazów w formatach innych niż Bitmap pakietowa wersja ma lepszą skuteczność niż wersja „thin”, która zależy od Usług Google Play.
W przypadku Digital Ink
com.google.mlkit:digital-ink-recognition:17.0.0lub starszej wersji oraz Entity Extractioncom.google.mlkit:entity-extraction:16.0.0-beta2lub starszej wersji, jeśli ustawisztargetSdkVersionna 31 i uruchomisz na Androidzie S, pojawi się ten wyjątek czasu wykonywania. Ten problem został rozwiązany w nowszych wersjach.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.Jeśli wolisz używać starszych wersji, możesz ustawić
targetSdkVersionna wartość mniejszą niż 31 lub dodać dobuild.gradleto obejście.// For apps targeting Android S+, add the following constraints { implementation 'androidx.work:work-runtime:2.7.0-alpha04' }
Problemy związane z iOS
- Symulatory na Macach z procesorem M1 nie są obsługiwane.
- Symulator x86_64 nie jest obsługiwany w przypadku tłumaczenia
'GoogleMLKit/Translate', '4.0.0'lub nowszego oraz inteligentnych odpowiedzi'GoogleMLKit/SmartReply', '4.0.0'lub nowszych.