مشاكل Android
- بالنسبة إلى معرّف اللغة المُضمَّن، قد يتعطل التطبيق عند الترقية إلى الإصدار 7.0.0 من Android AGP أو الإصدارات الأحدث.
لتجنُّب حدوث العُطل في الإصدار
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 مع عدد غير صفري من درجات الدوران إلى "تعامُل غير صالح مع الدوران"
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.
قد يتم تنفيذ مهام الاستدعاء بعد أن يتم إتلاف النشاط أو المقتطف الذي تم تسجيلها فيه. قد يؤدي ذلك إلى استثناء إذا حاولت دالّة الاستدعاء الوصول إلى أداة رصد تم إغلاقها في هذه الأثناء. إذا كنت تستخدم ML Kit في نشاط، يمكنك تسجيل مستمع على مستوى النشاط، الذي تتم إزالته تلقائيًا عند إيقاف النشاط. إذا كنت تستخدم ML Kit في عنصر مثبّت أو بيئة أخرى، يمكنك توفير ملف تنفيذ مخصّص يوقف التنفيذ عند إتلاف عنصر المثبّت. راجِع
ScopedExecutor.Java
في دليل البدء السريع لخدمة "الرؤية" للحصول على مثال.بالنسبة إلى ميزة "وضع تصنيف الصور" باستخدام تنسيقات صور غير 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_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'
أو الإصدارات الأحدث.