مشاكل Android
- في الإصدارين
com.google.mlkit:genai-prompt:1.0.0-beta3وcom.google.mlkit:genai-prompt:1.0.0-beta4، يؤدي استدعاءdownload()إلى عرضjava.lang.NoSuchMethodErrorعند اكتمال تنزيل النموذج أو إلغائه، إذا كان التطبيق يحلّkotlinx-coroutinesإلى الإصدار 1.10.x أو إصدار أقدم. كحلّ بديل، يمكنك تثبيت الإصدارkotlinx-coroutines-androidعلى1.11.0أو إصدار أحدث في تبعيات Gradle إلى أن نوفّر إصلاحًا في الإصدار التالي. - في
com.google.mlkit:genai-prompt:1.0.0-beta3وcom.google.mlkit:genai-prompt:1.0.0-beta4، يتعذّر تنفيذ الاستدلال باستخدام التخزين المؤقت للبادئة على طُرز nano-v4 عندما يتم ضبطModelConfigعلىModelPreference.FAST. كحلّ بديل، يمكنك حذف الإعدادModelConfigلاستخدام الإعدادات التلقائية إلى أن نوفّر حلاً في الإصدار التالي. - في
com.google.mlkit:genai-prompt:1.0.0-beta3، يؤدي طلبcheckStatus()على أجهزة غير Pixel إلى حدوث خطأGenAiExceptionلم تتم معالجته. استخدِم إصدارًا أحدث(com.google.mlkit:genai-prompt:1.0.0-beta4أو إصدارًا أحدث). - بالنسبة إلى حزمة Language ID، قد يتعطّل التطبيق عند الترقية إلى الإصدار 7.0.0 أو الإصدارات الأحدث من "المكوّن الإضافي لنظام Gradle المتوافق مع Android".
لتجنُّب التعطُّل في الإصدار
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 في حدوث خطأ "تدوير غير صالح" (invalid rotation)
MlKitException لواجهة برمجة التطبيقات FaceDetection لأنّ
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على بعض الأجهزة التي تعمل بالإصدار 1.0.0-beta08 أو الإصدارات الأحدث من camera-camera2. يمكنك استخدام إصدار سابق من 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>; }بالنسبة إلى واجهات برمجة التطبيقات الخاصة بالتعرّف على النص وتصنيف الصور وتتبُّع العناصر والتعرّف عليها، لا يزال الأداء باستخدام CameraX وCamera2 غير مماثل للأداء باستخدام Camera1، لأنّ تحويل تنسيق الصورة يستغرق وقتًا أطول عند استخدام CameraX وCamera2.
قد يتم تنفيذ عمليات رد الاتصال للمهمة بعد إيقاف النشاط أو الجزء الذي تم تسجيلها فيهما. قد يؤدي ذلك إلى حدوث استثناء إذا حاول برنامج معالجة البيانات الوصول إلى أداة رصد تم إغلاقها في الوقت نفسه. إذا كنت تستخدم حزمة تعلّم الآلة في نشاط، يمكنك تسجيل متتبِّع بنطاق النشاط، تتم إزالته تلقائيًا عند إيقاف النشاط. إذا كنت تستخدم حزمة تعلّم الآلة في Fragment أو بيئة أخرى، يمكنك توفير منفّذ مخصّص يوقف التنفيذ عند محو Fragment. يمكنك الاطّلاع على
ScopedExecutor.Javaفي دليل البدء السريع في استخدام ميزة "الوصول البصري" للحصول على مثال.بالنسبة إلى ميزة "تصنيف الصور" مع أشكال الصور غير النقطية، يحقّق الإصدار المجمَّع أداءً أفضل من الإصدار "الخفيف" الذي يعتمد على "خدمات Google Play".
بالنسبة إلى الإصدار
com.google.mlkit:digital-ink-recognition:17.0.0أو الإصدارات الأقدم من Digital Ink والإصدارcom.google.mlkit:entity-extraction:16.0.0-beta2أو الإصدارات الأقدم من Entity Extraction، سيظهر لك استثناء وقت التشغيل التالي إذا ضبطتtargetSdkVersionعلى 31 وشغّلت التطبيق على نظام التشغيل Android S. تم حلّ هذه المشكلة في إصداراتنا الأحدث.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.إذا كنت تفضّل استخدام إصدارات أقدم، يمكنك ضبط
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'من "الرد الذكي" أو الإصدارات الأحدث.