مشکلات شناخته‌شده

مشکلات 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، وقتی ModelConfig روی ModelPreference.FAST تنظیم شده باشد، اجرای استنباط با پیشوند ذخیره‌سازی در مدل‌های nano-v4 با خطا مواجه می‌شود. تا زمانی که در نسخه بعدی اصلاحیه ارائه کنیم، به‌عنوان راهکار موقت، تنظیم ModelConfig را حذف کنید تا از پیکربندی پیش‌فرض استفاده شود.
  • در com.google.mlkit:genai-prompt:1.0.0-beta3، فراخوانی checkStatus() در دستگاه‌های غیرPixel باعث ایجاد GenAiException مدیریت‌نشده می‌شود. از نسخه جدیدتری استفاده کنید (com.google.mlkit:genai-prompt:1.0.0-beta4 یا جدیدتر).
  • برای «شناسه زبان» دسته‌ای، ممکن است برنامه هنگام ارتقا به 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 برای «میانای برنامه‌سازی کاربردی تشخیص چهره» می‌شود زیرا com.google.mlkit:face-detection:16.0.5 و com.google.android.gms:play-services-mlkit-barcode-scanning:16.1.4. لطفاً از نسخه قدیمی‌تر استفاده کنید و منتظر نسخه پخش بعدی ما که شامل رفع این مشکل است بمانید.
  • «کیت‌های توسعه نرم‌افزار» 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 زمان بیشتری می‌برد.

  • ممکن است فراخوانی‌های برگشتی Task پس‌از نابود شدن Activity یا Fragment که در آن ثبت شده‌اند اجرا شوند. اگر فراخوانی برگشتی در این فاصله سعی کند به شناساگری که بسته شده است دسترسی پیدا کند، ممکن است این امر منجر به استثنا شود. اگر در «فعالیت» از ML Kit استفاده می‌کنید، می‌توانید شنوده‌ با محدوده فعالیت ثبت کنید که وقتی «فعالیت» متوقف می‌شود به‌طور خودکار برداشته می‌شود. اگر از «کیت یادگیری ماشین» در Fragment یا محیط دیگری استفاده می‌کنید، می‌توانید مجری سفارشی‌ای ارائه دهید که وقتی Fragment ازبین می‌رود، اجرا را متوقف کند. برای مثال، ScopedExecutor.Java را در شروع سریع Vision ببینید.

  • برای «برچسب‌گذاری تصویر» با قالب‌های تصویری غیر از «بیت‌مپ»، گونه دسته‌ای عملکرد بهتری نسبت‌به گونه «نازک» که به «خدمات Google Play» وابسته است دارد.

  • برای Digital Ink com.google.mlkit:digital-ink-recognition:17.0.0 یا نسخه‌های قدیمی‌تر و Entity Extraction com.google.mlkit:entity-extraction:16.0.0-beta2 یا نسخه‌های قدیمی‌تر، اگر targetSdkVersion را روی ۳۱ تنظیم کنید و در Android S اجرا کنید، استثنای زمان اجرای زیر را دریافت خواهید کرد.

    Targeting S+ (version 31 and above) requires that one of FLAG_IMMUTABLE or FLAG_MUTABLE be specified when creating a PendingIntent.
    AndroidRuntime: Strongly consider using FLAG_IMMUTABLE, only use FLAG_MUTABLE if some functionality depends on the PendingIntent being mutable, e.g. if it needs to be used with inline replies or bubbles.
    
    این مشکل در نسخه‌های جدیدتر ما برطرف شده است.

    اگر ترجیح می‌دهید از نسخه‌های قدیمی‌تر استفاده کنید، می‌توانید targetSdkVersion را روی کمتر از ۳۱ تنظیم کنید یا راه‌حل زیر را به 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' یا جدیدتر پشتیبانی نمی‌شود.