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