مشاكل 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أو إصدار أحدث). - بالنسبة إلى معرّف اللغة المجمّع، قد يتعطّل التطبيق عند الترقية إلى الإصدار 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 غير صفري إلى حدوث MlKitException "تدوير غير صالح" لواجهة برمجة التطبيقات 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"
قد يتم تشويش الطرق الأصلية من خلال القواعد المخصّصة في الإصدار
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 يستغرق وقتًا أطول.
Task callbacks might execute after the Activity or Fragment in which they have been registered has been destroyed. قد يؤدي ذلك إلى حدوث استثناء إذا حاولت دالة الاستدعاء الوصول إلى أداة رصد تم إغلاقها في هذه الأثناء. إذا كنت تستخدم حزمة تعلّم الآلة في نشاط، يمكنك تسجيل مستمع على مستوى النشاط، والذي تتم إزالته تلقائيًا عند إيقاف النشاط. إذا كنت تستخدم حزمة تعلّم الآلة في Fragment أو بيئة أخرى، يمكنك توفير منفّذ مخصّص يوقف التنفيذ عند تدمير Fragment. يمكنك الاطّلاع على
ScopedExecutor.Javaفي دليل البدء السريع لـ Vision للحصول على مثال.بالنسبة إلى ميزة "تصنيف الصور" التي تستخدم تنسيقات صور غير Bitmap، يحقّق الإصدار المجمّع أداءً أفضل من الإصدار "الرفيع" الذي يعتمد على "خدمات Google Play".
بالنسبة إلى الإصدار
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_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'من واجهة برمجة التطبيقات Translation API أو الإصدارات الأحدث والإصدار'GoogleMLKit/SmartReply', '4.0.0'من واجهة برمجة التطبيقات Smart Reply API أو الإصدارات الأحدث.