ปัญหาที่ทราบ

ปัญหาเกี่ยวกับ 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 ที่รวมไว้ แอปอาจขัดข้องเมื่ออัปเกรดเป็น 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 ที่ไม่ใช่ 0 จะทําให้เกิด "การหมุนที่ไม่ถูกต้อง" 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 ใช้ไม่ได้ในอุปกรณ์บางเครื่องที่ใช้กล้อง-camera2:1.0.0-beta08 ขึ้นไป คุณสามารถใช้กล้องเวอร์ชันก่อนหน้า - กล้อง 2 เพื่อหลีกเลี่ยงปัญหานี้ได้ เช่น

    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>;
    }

  • สำหรับ API การจดจำข้อความ การติดป้ายกำกับรูปภาพ และการตรวจจับและการติดตามออบเจ็กต์ ประสิทธิภาพของ CameraX และ Camera2 ยังไม่เทียบเท่ากับ Camera1 เนื่องจากต้องใช้เวลามากขึ้นในการแปลงรูปแบบสำหรับรูปภาพ จาก CameraX และ Camera2

  • งาน อาจเรียกกลับหลังจากที่ Activity หรือ Fragment ที่ลงทะเบียนไว้ถูกทำลายแล้ว ซึ่งอาจทำให้เกิดข้อยกเว้นหากการเรียกกลับ พยายามเข้าถึงเครื่องตรวจจับที่ปิดไปแล้วในระหว่างนั้น หากใช้ ML Kit ในกิจกรรม คุณสามารถลงทะเบียนเครื่องมือฟังที่กำหนดขอบเขตของกิจกรรมได้ ซึ่งระบบจะนำออกโดยอัตโนมัติเมื่อหยุดกิจกรรม หากคุณใช้ ML Kit ใน Fragment หรือสภาพแวดล้อมอื่นๆ คุณสามารถระบุตัวดำเนินการที่กำหนดเองซึ่งจะปิดการดำเนินการเมื่อ Fragment ถูกทำลาย ดูตัวอย่างได้ที่ ScopedExecutor.Javaในการเริ่มต้นใช้งาน Vision ฉบับย่อ

  • สำหรับการติดป้ายกำกับรูปภาพด้วยรูปแบบรูปภาพอื่นที่ไม่ใช่บิตแมป ตัวแปรที่รวมกลุ่มมีประสิทธิภาพดีกว่าตัวแปร "บาง" ที่ขึ้นอยู่กับบริการ 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 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 เป็นน้อยกว่า 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' ขึ้นไป