בעיות ב-Android
- בחבילה של מזהי שפה, האפליקציה עלולה לקרוס כשמשדרגים ל-AGP 7.0.0 ואילך.
כדי למנוע את הקריסה ב-
com.google.mlkit:language-id:16.1.1
או בגרסאות קודמות, צריך לכלול את הכלל הבא:-keep class com.google.mlkit.nl.languageid.internal.LanguageIdentificationJni { *; }
כדי למנוע את הקריסה ב-com.google.mlkit:language-id:17.0.0
או ב-com.google.mlkit:language-id:17.0.1
, צריך לכלול את הכלל הבא:-keep class com.google.mlkit.nl.languageid.internal.ThickLanguageIdentifier { *; }
- קלטImage שנבנה על ידי Bitmap עם סיבוב ללא אפס מעלות גורם ל'סיבוב לא חוקי'
MlKit מבוססי API ל-FaceDetection API מאז
com.google.mlkit:face-detection:16.0.5
ו-com.google.android.gms:play-services-mlkit-barcode-scanning:16.1.4
. השתמשו בגרסה קודמת והמתינו לגרסה הבאה, שכוללת את התיקון לבעיה הזו. ערכות ה-SDK של סריקת ברקוד מותאמות ל-
com.google.mlkit:barcode-scanning:16.1.0
ול-com.google.android.gms:play-services-mlkit-barcode-scanning:16.1.3
לא פועלות במכשירים מסוימים שפועלים עם גרסה Camera-camera2:1.0.0-beta08 ואילך. כדי לעקוף את הבעיה, אפשר להשתמש בגרסה קודמת של Camera-camera2. לדוגמה: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"
שיטות מקוריות עשויות להיות מעורפלות (obfuscation) על ידי כללים מותאמים אישית ב-
com.google.mlkit:language-id:16.1.1
או בגרסאות קודמות. יש לכלול את הכלל הבא כדי לשמור אותן במקרה של שגיאות כמוjava.lang.UnsatisfiedLinkError
:-keepclasseswithmembernames class com.google.mlkit.nl.languageid.internal.LanguageIdentificationJni { native <methods>; }
בממשקי ה-API של זיהוי טקסט, הוספת תוויות לתמונות, וזיהוי אובייקטים ומעקב, הביצועים עם CameraX ו- Camera2 עדיין לא דומים לביצועים של Camera1, כי לוקח יותר זמן לבצע המרת פורמט לתמונה מ- CameraX ומ- Camera2.
קריאות חוזרות (callback) למשימות יכולות להתבצע אחרי הושמדו של הפעילויות או ה-Fragment שבהם הם נרשמו. במקרה כזה, יכול להיות שהקריאה החוזרת תנסה לגשת לגלאי שנסגר בינתיים. אם אתם משתמשים בערכת ML בפעילות, תוכלו לרשום האזנה ברמת הפעילות, שמוסרת באופן אוטומטי כשהפעילות מופסקת. אם אתם משתמשים בערכת ML ב-Fragment או בסביבה אחרת, אפשר לספק קובץ הפעלה בהתאמה אישית שמשבית את הביצוע כשה-Fragment מושמד. תוכלו לעיין בדוגמה
ScopedExecutor.Java
ב-Vision Quickstart.לגבי הוספת תוויות לתמונות עם פורמטים אחרים של תמונות שאינם Bitmap, הביצועים של הווריאנט בחבילה טובים יותר מאלה של הווריאנט ה "דק" שתלוי ב-Google Play Services.
לדיו דיגיטלי
com.google.mlkit:digital-ink-recognition:17.0.0
או לגרסאות קודמות, ולחילוץ ישויותcom.google.mlkit:entity-extraction:16.0.0-beta2
או גרסאות קודמות, תקבלו את החריג הבא בזמן הריצה אם תגדירו אתtargetSdkVersion
ל-31 ותפעילו את המערכת ב-Android S.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.אם אתם מעדיפים להשתמש בגרסאות ישנות יותר, אפשר להגדיר את
targetSdkVersion
לערך נמוך מ-31 או להוסיף את הקוד הבא ל-build.gradle
כפתרון עקיף.// For apps targeting Android S+, add the following constraints { implementation 'androidx.work:work-runtime:2.7.0-alpha04' }
בעיות ב-iOS
- אין תמיכה בסימולטורים ב-Mac מבוסס M1.
- סימולטור X86_64 לא נתמך בתרגום
'GoogleMLKit/Translate', '4.0.0'
ואילך ובתשובה מהירה'GoogleMLKit/SmartReply', '4.0.0'
ואילך.