既知の問題

Android に関する問題

  • com.google.mlkit:genai-prompt:1.0.0-beta3 と com.google.mlkit:genai-prompt:1.0.0-beta4 で、アプリが kotlinx-coroutines を 1.10.x 以前に解決する場合、モデルのダウンロードが完了またはキャンセルされると、download() を呼び出すと java.lang.NoSuchMethodError がスローされます。回避策として、次のリリースで修正されるまで、Gradle の依存関係で kotlinx-coroutines-android を 1.11.0 以降に明示的に固定してください。
  • 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 で、Google Pixel 以外のデバイスで checkStatus() を呼び出すと、処理されない GenAiException がスローされます。新しいバージョン(com.google.mlkit:genai-prompt:1.0.0-beta4 以降)を使用してください。
  • バンドルされた言語 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 { *; }
  • com.google.mlkit:face-detection:16.0.5 と com.google.android.gms:play-services-mlkit-barcode-scanning:16.1.4 以降では、Bitmap で構築された InputImage の rotationDegrees がゼロ以外の場合、FaceDetection API で「無効な回転」MlKitException が発生します。以前のバージョンを使用し、この問題の修正を含む次のリリースをお待ちください。
  • com.google.mlkit:barcode-scanning:16.1.0 と com.google.android.gms:play-services-mlkit-barcode-scanning:16.1.3 より前の BarcodeScanning SDK は、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 の画像からフォーマット変換を行うのに時間がかかるため、テキスト認識、画像ラベリング、オブジェクト検出とトラッキングの各 API のパフォーマンスは、CameraX と Camera2 では Camera1 と同等ではありません。

  • タスク コールバックは、登録されているアクティビティまたはフラグメントが破棄された後に実行されることがあります。コールバックが、その間に閉じられた検出器にアクセスしようとすると、例外が発生する可能性があります。アクティビティで ML Kit を 使用している場合は、 アクティビティの範囲のリスナーを登録できます。 このリスナーは、アクティビティが停止すると自動的に削除されます。フラグメントや他の環境で ML Kit を使用している場合は、フラグメントが破棄されたときに実行を停止するカスタム エグゼキュータを指定できます。例については、Vision クイックスタートの ScopedExecutor.Javaをご覧ください。

  • Bitmap 以外の画像形式で画像ラベリングを行う場合、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 に関する問題

  • M1 ベースの Mac のシミュレータはサポートされていません。
  • 翻訳 'GoogleMLKit/Translate', '4.0.0' 以降とスマート リプライ 'GoogleMLKit/SmartReply', '4.0.0' 以後では、X86_64 シミュレータはサポートされていません。