ปัญหาที่ทราบ
จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน
บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ
ปัญหาเกี่ยวกับ Android
- สำหรับรหัสภาษาที่รวมไว้ แอปอาจขัดข้องเมื่ออัปเกรดเป็น 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
โปรดใช้เวอร์ชันก่อนหน้าและรอการเปิดตัวครั้งถัดไปของเราซึ่งมีการแก้ไขสำหรับปัญหานี้
BarcodeScanning 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>;
}
สำหรับ API การจดจำข้อความ การติดป้ายกำกับรูปภาพ การตรวจจับและติดตามวัตถุ ประสิทธิภาพของ CameraX และ Camera2 ยังเทียบเท่า Camera1 ไม่ได้ เนื่องจากใช้เวลาในการแปลงรูปแบบรูปภาพจาก CameraX และ Camera2 นานกว่า
Task callbacks อาจทำงานหลังจากที่ Activity หรือ Fragment ที่ลงทะเบียนไว้ถูกทำลายไปแล้ว ซึ่งอาจทำให้เกิดข้อยกเว้นหากการเรียกกลับพยายามเข้าถึงเครื่องตรวจจับที่ปิดไปแล้วในระหว่างนี้ หากใช้ ML Kit ในกิจกรรม คุณสามารถลงทะเบียนตัวฟังระดับกิจกรรม ซึ่งระบบจะนำออกโดยอัตโนมัติเมื่อหยุดกิจกรรม หากคุณใช้ ML Kit ใน Fregment หรือสภาพแวดล้อมอื่นๆ คุณสามารถระบุตัวดำเนินการที่กําหนดเองซึ่งจะปิดการดําเนินการเมื่อ Fregment ถูกทำลาย ดูตัวอย่างได้ที่ 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
- การแปล
'GoogleMLKit/Translate', '4.0.0'
ขึ้นไปและฟีเจอร์ช่วยตอบ 'GoogleMLKit/SmartReply', '4.0.0'
ขึ้นไปไม่รองรับเครื่องจำลอง X86_64
เนื้อหาของหน้าเว็บนี้ได้รับอนุญาตภายใต้ใบอนุญาตที่ต้องระบุที่มาของครีเอทีฟคอมมอนส์ 4.0 และตัวอย่างโค้ดได้รับอนุญาตภายใต้ใบอนุญาต Apache 2.0 เว้นแต่จะระบุไว้เป็นอย่างอื่น โปรดดูรายละเอียดที่นโยบายเว็บไซต์ Google Developers Java เป็นเครื่องหมายการค้าจดทะเบียนของ Oracle และ/หรือบริษัทในเครือ
อัปเดตล่าสุด 2025-08-29 UTC
[null,null,["อัปเดตล่าสุด 2025-08-29 UTC"],[[["\u003cp\u003eUpgrading to AGP 7.0.0+ with bundled Language ID may cause crashes, requiring specific keep rules to be added for different versions.\u003c/p\u003e\n"],["\u003cp\u003eInputImage created with Bitmap and rotationDegrees may cause errors with FaceDetection API in specific versions; use earlier versions or await a fix.\u003c/p\u003e\n"],["\u003cp\u003eBarcodeScanning SDKs before 16.1.0/16.1.3 have compatibility issues with camera-camera2:1.0.0-beta08+, consider using earlier camera-camera2 versions.\u003c/p\u003e\n"],["\u003cp\u003eTask callbacks may execute after Activity/Fragment destruction, potentially causing exceptions; use Activity-scoped listeners or custom executors for mitigation.\u003c/p\u003e\n"],["\u003cp\u003eOn Android S with targetSdkVersion 31, Digital Ink and Entity Extraction SDKs before specific versions may cause runtime exceptions regarding PendingIntent flags; upgrade to newer SDKs or apply a workaround.\u003c/p\u003e\n"]]],["Key actions and information regarding Android issues include: adding specific `-keep` rules to avoid crashes when using Language ID with AGP 7.0.0 or later; using earlier versions of Face Detection and Barcode Scanning due to \"invalid rotation\" and camera compatibility issues; adding a rule to fix `UnsatisfiedLinkError` with Language ID. Performance with CameraX/Camera2 is not optimized for Text Recognition, Image Labeling, and Object Detection. Activity-scoped listeners can be registered to prevent exceptions with Task callbacks. Setting `targetSdkVersion` or adding constraints to address Digital Ink and Entity Extraction issues.\n"],null,["Android issues\n\n- For bundled Language ID, the app may crash when upgrading to AGP 7.0.0 or later. To avoid the crash in `com.google.mlkit:language-id:16.1.1` or earlier, include the rule below: \n\n ```scdoc\n -keep class com.google.mlkit.nl.languageid.internal.LanguageIdentificationJni { *; }\n ```\n To avoid the crash in `com.google.mlkit:language-id:17.0.0` or `com.google.mlkit:language-id:17.0.1`, include the rule below: \n\n ```scdoc\n -keep class com.google.mlkit.nl.languageid.internal.ThickLanguageIdentifier { *; }\n ```\n- InputImage constructed by Bitmap with a non zero rotationDegrees causes an \"invalid rotation\" MlKitException for FaceDetection API since `com.google.mlkit:face-detection:16.0.5` and `com.google.android.gms:play-services-mlkit-barcode-scanning:16.1.4`. Please use an earlier version and wait for our next release which includes the fix for this issue.\n- BarcodeScanning SDKs pior to `com.google.mlkit:barcode-scanning:16.1.0`\n and `com.google.android.gms:play-services-mlkit-barcode-scanning:16.1.3`\n do not work on some devices running with camera-camera2:1.0.0-beta08 version or later.\n You can use an earlier version of camera-camera2 to bypass this issue. For example:\n\n ```carbon\n implementation \"androidx.camera:camera-core:1.0.0-beta07\"\n implementation \"androidx.camera:camera-camera2:1.0.0-beta07\"\n implementation \"androidx.camera:camera-view:1.0.0-alpha14\"\n implementation \"androidx.camera:camera-extensions:1.0.0-alpha14\"\n implementation \"androidx.camera:camera-lifecycle:1.0.0-beta07\"\n ```\n\n \u003cbr /\u003e\n\n- Native methods might be obfuscated by custom rules in `com.google.mlkit:language-id:16.1.1` or earlier.\n Include the following rule to keep them if you encounter errors like `java.lang.UnsatisfiedLinkError`:\n\n ```text\n -keepclasseswithmembernames class com.google.mlkit.nl.languageid.internal.LanguageIdentificationJni {\n native \u003cmethods\u003e;\n }\n ```\n\n \u003cbr /\u003e\n\n- For the Text Recognition, Image Labeling, and Object Detection and\n Tracking APIs, the performance with CameraX and Camera2 is still not on par\n with Camera1, because it takes more time to do format conversion for image\n from CameraX and Camera2.\n\n- [Task](https://developers.google.com/android/guides/tasks)\n callbacks might execute after the Activity or Fragment in which they have been\n registered has been destroyed. This might lead to an exception if the callback\n tries to access a detector that has been closed in the meantime. If you are\n using ML Kit in an Activity, you can register an\n [Activity-scoped listener](https://developers.google.com/android/guides/tasks#activity-scoped_listeners),\n which is automatically removed when the Activity is stopped. If you are\n using ML Kit in a Fragment or other environment, you can provide a custom\n executor that shuts down execution when the Fragment is destroyed. See\n `ScopedExecutor.Java` in the [Vision Quickstart](https://github.com/googlesamples/mlkit/tree/master/android/vision-quickstart) for an\n example.\n\n- For Image Labeling with image formats other than Bitmap, bundled variant\n has better performance than \"thin\" variant that depends on Google Play Services.\n\n- For Digital Ink `com.google.mlkit:digital-ink-recognition:17.0.0` or earlier\n and Entity Extraction `com.google.mlkit:entity-extraction:16.0.0-beta2` or earlier,\n you will get the following runtime exception if you set `targetSdkVersion` to 31\n and run on Android S.\n\n Targeting S+ (version 31 and above) requires that one of FLAG_IMMUTABLE or FLAG_MUTABLE be specified when creating a PendingIntent.\n 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.\n\n This issue is fixed in our more recent releases.\n\n \u003cbr /\u003e\n\n If you prefer using older versions, you can either set `targetSdkVersion` to\n less than 31 or add the following to your `build.gradle` as a workaround. \n\n ```carbon\n // For apps targeting Android S+, add the following\n constraints {\n implementation 'androidx.work:work-runtime:2.7.0-alpha04'\n }\n ```\n\n \u003cbr /\u003e\n\niOS issues\n\n- Simulators on M1-based Mac are not supported.\n- X86_64 simulator is not supported for Translation `'GoogleMLKit/Translate', '4.0.0'` or later and Smart Reply `'GoogleMLKit/SmartReply', '4.0.0'` or later."]]