Problemy z Androidem
- W przypadku
com.google.mlkit:genai-prompt:1.0.0-beta3icom.google.mlkit:genai-prompt:1.0.0-beta4wywołaniedownload()powoduje zgłoszenie błędujava.lang.NoSuchMethodErrorpo zakończeniu lub anulowaniu pobierania modelu, jeśli aplikacja rozpoznajekotlinx-coroutinesjako wersję 1.10.x lub starszą. Aby obejść ten problem, przypnijkotlinx-coroutines-androiddo wersji1.11.0lub nowszej w zależnościach Gradle, dopóki nie udostępnimy poprawki w następnej wersji. - W wersjach
com.google.mlkit:genai-prompt:1.0.0-beta3icom.google.mlkit:genai-prompt:1.0.0-beta4wnioskowanie z buforowaniem prefiksów nie działa w przypadku modeli nano-v4, gdy parametrModelConfigjest ustawiony naModelPreference.FAST. Aby obejść ten problem, pomiń ustawienieModelConfig, aby użyć konfiguracji domyślnej, dopóki nie udostępnimy poprawki w następnej wersji. - W
com.google.mlkit:genai-prompt:1.0.0-beta3wywołaniecheckStatus()na urządzeniach innych niż Pixel powoduje nieobsługiwany błądGenAiException. Użyj nowszej wersji (com.google.mlkit:genai-prompt:1.0.0-beta4lub nowszej). - W przypadku pakietu Language ID aplikacja może ulec awarii po uaktualnieniu do wtyczki Androida do obsługi Gradle w wersji 7.0.0 lub nowszej.
Aby uniknąć awarii w wersji
com.google.mlkit:language-id:16.1.1lub starszej, dodaj tę regułę: 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 poniższą regułę:-keep class com.google.mlkit.nl.languageid.internal.ThickLanguageIdentifier { *; } - Obiekt InputImage utworzony przez Bitmap z wartością rotationDegrees inną niż zero powoduje błąd MlKitException „nieprawidłowy obrót” w przypadku interfejsu FaceDetection API od wersji
com.google.mlkit:face-detection:16.0.5icom.google.android.gms:play-services-mlkit-barcode-scanning:16.1.4. Użyj wcześniejszej wersji i poczekaj na kolejną, która będzie zawierać poprawkę tego błędu. Pakiety SDK do skanowania kodów kreskowych w wersji starszej 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 biblioteką camera-camera2 w wersji 1.0.0-beta08 lub nowszej. Aby obejść ten problem, możesz użyć wcześniejszej 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 wersji
com.google.mlkit:language-id:16.1.1lub starszej. Jeśli wystąpią błędy takie jakjava.lang.UnsatisfiedLinkError, dodaj tę 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ść CameraX i Camera2 nadal nie jest na poziomie Camera1, ponieważ konwersja formatu obrazu z CameraX i Camera2 zajmuje więcej czasu.
Wywołania zwrotne Task mogą zostać wykonane po zniszczeniu aktywności lub fragmentu, w którym zostały zarejestrowane. Może to spowodować wyjątek, jeśli wywołanie zwrotne spróbuje uzyskać dostęp do detektora, który został zamknięty w międzyczasie. Jeśli używasz ML Kit w aktywności, możesz zarejestrować detektor 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 obiekt wykonujący, który zatrzyma wykonywanie, gdy fragment zostanie zniszczony. Przykład znajdziesz w sekcji
ScopedExecutor.Javaw krótkim wprowadzeniu do Vision.W przypadku etykietowania obrazów w formatach plików graficznych innych niż bitmapa wariant pakietowy ma lepszą wydajność niż wariant „thin”, który zależy od Usług Google Play.
W przypadku cyfrowego atramentu w wersji
com.google.mlkit:digital-ink-recognition:17.0.0lub starszej oraz wyodrębniania encji w wersjicom.google.mlkit:entity-extraction:16.0.0-beta2lub starszej otrzymasz ten wyjątek czasu działania, jeśli ustawisztargetSdkVersionna 31 i uruchomisz na Androidzie S. 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.gradleponiższy kod.// 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 procesorem M1 nie są obsługiwane.
- Symulator X86_64 nie jest obsługiwany w przypadku Tłumaczenia w wersji
'GoogleMLKit/Translate', '4.0.0'lub nowszej ani Inteligentnej odpowiedzi w wersji'GoogleMLKit/SmartReply', '4.0.0'lub nowszej.