Vấn đề đã biết

Các vấn đề về Android

  • Trong com.google.mlkit:genai-prompt:1.0.0-beta3 và com.google.mlkit:genai-prompt:1.0.0-beta4, việc gọi download() sẽ gửi một java.lang.NoSuchMethodError khi quá trình tải mô hình xuống hoàn tất hoặc bị huỷ nếu ứng dụng phân giải kotlinx-coroutines thành 1.10.x trở xuống. Để giải quyết vấn đề này, hãy ghim rõ ràng kotlinx-coroutines-android vào 1.11.0 hoặc phiên bản mới hơn trong các phần phụ thuộc Gradle cho đến khi chúng tôi cung cấp bản sửa lỗi trong bản phát hành tiếp theo.
  • Trong com.google.mlkit:genai-prompt:1.0.0-beta3 và com.google.mlkit:genai-prompt:1.0.0-beta4, việc chạy suy luận bằng tính năng lưu tiền tố vào bộ nhớ đệm sẽ không thành công trên các mô hình nano-v4 khi ModelConfig được đặt thành ModelPreference.FAST. Để khắc phục, hãy bỏ qua chế độ cài đặt ModelConfig để sử dụng cấu hình mặc định cho đến khi chúng tôi cung cấp bản sửa lỗi trong bản phát hành tiếp theo.
  • Trong com.google.mlkit:genai-prompt:1.0.0-beta3, việc gọi checkStatus() trên các thiết bị không phải Pixel sẽ gửi một GenAiException chưa được xử lý. Sử dụng phiên bản mới hơn (com.google.mlkit:genai-prompt:1.0.0-beta4 trở lên).
  • Đối với tính năng Nhận dạng ngôn ngữ theo gói, ứng dụng có thể gặp sự cố khi nâng cấp lên AGP 7.0.0 trở lên. Để tránh sự cố trong com.google.mlkit:language-id:16.1.1 trở xuống, hãy thêm quy tắc dưới đây:
    -keep class com.google.mlkit.nl.languageid.internal.LanguageIdentificationJni { *; }
    Để tránh sự cố trong com.google.mlkit:language-id:17.0.0 hoặc com.google.mlkit:language-id:17.0.1, hãy thêm quy tắc dưới đây:
    -keep class com.google.mlkit.nl.languageid.internal.ThickLanguageIdentifier { *; }
  • InputImage được tạo bằng Bitmap có rotationDegrees khác 0 gây ra lỗi MlKitException "invalid rotation" (xoay không hợp lệ) cho API FaceDetection kể từ phiên bản com.google.mlkit:face-detection:16.0.5 và com.google.android.gms:play-services-mlkit-barcode-scanning:16.1.4. Vui lòng sử dụng phiên bản cũ hơn và đợi bản phát hành tiếp theo của chúng tôi, trong đó có bản sửa lỗi cho vấn đề này.
  • SDK BarcodeScanning trước com.google.mlkit:barcode-scanning:16.1.0 và com.google.android.gms:play-services-mlkit-barcode-scanning:16.1.3 không hoạt động trên một số thiết bị chạy camera-camera2:1.0.0-beta08 trở lên. Bạn có thể sử dụng phiên bản cũ hơn của camera-camera2 để bỏ qua vấn đề này. Ví dụ:

    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"

  • Các phương thức gốc có thể bị làm rối mã nguồn theo quy tắc tuỳ chỉnh trong com.google.mlkit:language-id:16.1.1 trở xuống. Hãy thêm quy tắc sau để giữ lại các lớp này nếu bạn gặp lỗi như java.lang.UnsatisfiedLinkError:

    -keepclasseswithmembernames class com.google.mlkit.nl.languageid.internal.LanguageIdentificationJni {
      native <methods>;
    }

  • Đối với các API Nhận dạng văn bản, Gắn nhãn hình ảnh, Phát hiện đối tượng và Theo dõi, hiệu suất của CameraX và Camera2 vẫn chưa ngang bằng với Camera1, vì việc chuyển đổi định dạng cho hình ảnh từ CameraX và Camera2 mất nhiều thời gian hơn.

  • Lệnh gọi lại Task có thể thực thi sau khi Hoạt động hoặc Fragment mà chúng đã được đăng ký bị hủy bỏ. Điều này có thể dẫn đến một ngoại lệ nếu lệnh gọi lại cố gắng truy cập vào một trình phát hiện đã bị đóng trong thời gian chờ đợi. Nếu đang sử dụng Bộ công cụ học máy trong một Hoạt động, bạn có thể đăng ký một Trình nghe trong phạm vi hoạt động. Trình nghe này sẽ tự động bị xoá khi Hoạt động dừng lại. Nếu đang sử dụng Bộ công cụ học máy trong một Fragment hoặc môi trường khác, bạn có thể cung cấp một trình thực thi tuỳ chỉnh để tắt quá trình thực thi khi Fragment bị hủy bỏ. Hãy xem ScopedExecutor.Java trong phần Bắt đầu nhanh về Vision để biết ví dụ.

  • Đối với tính năng Gắn nhãn hình ảnh có định dạng hình ảnh không phải Bitmap, biến thể đi kèm có hiệu suất tốt hơn biến thể "mỏng" phụ thuộc vào Dịch vụ Google Play.

  • Đối với Mực kỹ thuật số com.google.mlkit:digital-ink-recognition:17.0.0 trở xuống và Trích xuất thực thể com.google.mlkit:entity-extraction:16.0.0-beta2 trở xuống, bạn sẽ nhận được ngoại lệ thời gian chạy sau đây nếu đặt targetSdkVersion thành 31 và chạy trên 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.
    
    Vấn đề này đã được khắc phục trong các bản phát hành gần đây của chúng tôi.

    Nếu muốn sử dụng các phiên bản cũ hơn, bạn có thể đặt targetSdkVersion thành giá trị nhỏ hơn 31 hoặc thêm nội dung sau vào build.gradle làm giải pháp thay thế.

    // For apps targeting Android S+, add the following
    constraints {
      implementation 'androidx.work:work-runtime:2.7.0-alpha04'
    }

Các vấn đề về iOS

  • Trình mô phỏng trên máy Mac dùng chip M1 không được hỗ trợ.
  • Trình mô phỏng X86_64 không được hỗ trợ cho tính năng Dịch 'GoogleMLKit/Translate', '4.0.0' trở lên và Trả lời thông minh 'GoogleMLKit/SmartReply', '4.0.0' trở lên.