בעיות ב-Android
- במקרה של Language ID שצורף לחבילה, האפליקציה עלולה לקרוס כשמשדרגים ל-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 { *; }
- InputImage שנוצר על ידי Bitmap עם rotationDegrees שאינו אפס גורם ל-MlKitException ("סיבוב לא תקין") עבור FaceDetection API, כי
com.google.mlkit:face-detection:16.0.5
ו-com.google.android.gms:play-services-mlkit-barcode-scanning:16.1.4
. מומלץ להשתמש בגרסה קודמת ולהמתין לגרסה הבאה שלנו, שתכלול את התיקון לבעיה הזו. ערכות SDK של BarcodeScanning בגרסאות קודמות ל-
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"
יכול להיות שהשיטות המקוריות יוסתרו על ידי כללים מותאמים אישית בגרסה
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) של משימות יופעלו אחרי שהפעילות או הפריט שבהם הן נרשמו יושמדו. יכול להיות שזה יוביל לחריגה אם הקריאה החוזרת תנסה לגשת לגלאי שנסגר בינתיים. אם אתם משתמשים ב-ML Kit בפעילות, אתם יכולים לרשום מאזין בהיקף פעילות, שמוסר אוטומטית כשהפעילות מופסקת. אם אתם משתמשים ב-ML Kit ב-Fragment או בסביבה אחרת, אתם יכולים לספק executor מותאם אישית שמפסיק את ההפעלה כש-Fragment מושמד. דוגמה לכך מופיעה במאמר Vision Quickstart בקטע
ScopedExecutor.Java
.לסימון תמונות בפורמטים שאינם Bitmap, הגרסה המצורפת משיגה ביצועים טובים יותר מהגרסה 'הדקה' שתלויה ב-Google Play Services.
אם משתמשים ב-Digital Ink בגרסה
com.google.mlkit:digital-ink-recognition:17.0.0
או בגרסאות קודמות, או ב-Entity Extraction בגרסה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'
ומעלה.