Google は、黒人コミュニティに対する人種平等の促進に取り組んでいます。取り組みを見る
このページは Cloud Translation API によって翻訳されました。
Switch to English

USBポートリセットAPIの実装

USBポートリセットAPIは、Android 11以降を実行しているデバイス用のAndroidオープンソースプロジェクト(AOSP)で利用可能なシステムAPIです。これを使用して、接続されているホストとのUSBガジェット接続をリセットします。 USBポートリセットAPIをサポートするには、デバイスメーカーはUSBガジェットHALV1.1を実装する必要があります。 USBポートリセットAPIを使用するには、システム特権アプリが必要です。

USBガジェットHALv1.1およびUSBポートリセットAPIの検索

デバイスメーカーは、USBポートリセットAPIをサポートするためにUSBガジェットHALv1.1を実装する必要があります。

  1. USB Gadget HAL v.1.1のデフォルトの実装を見つけるには、次のパスを使用します: <aosp>/hardware/interfaces/usb/gadget/1.1/default/
  2. ハードウェアインターフェイスヘッダーファイルを見つけるには、次のパスを使用します: <aosp>/hardware/interfaces/usb/gadget/1.1/IUsbGadget.hal
  3. USBポートリセットAPIを見つけるには、このパスを使用してAIDLヘッダーファイルの下にあるAPIを見つけます。このパスは、USBポートリセットAPIのAndroidFrameworkエントリポイントでもあります。
    <aosp>/core/java/android/hardware/usb

ガジェットHALv1.1の実装

USBポートリセットAPIをサポートするには、USBガジェットHALv1.1を実装する必要があります。システムUIの実装は必要ありません。 USBポートリセットAPI用のUSBガジェットHALv1.1を実装するには、ターゲットデバイスとホスト間のUSB接続をリセットします

USBポートリセットAPIコードフロー

次の図は、USBガジェットHALの実装を含む、フレームワークでのUSBポートリセットAPIのコードフローを示しています。

USBリセットAPI

1.USBポートリセットAPIコードフローの例

検証

次のパスに従って、USBポートリセットAPI用に実装されたVTSテストケースを見つけます。

<aosp>/test/vts-testcase/hal/usb/gadget/V1_1/

USBポートリセットAPIのVTSテストケースは、次のアクションを実行できるホスト側のテストケースです。

  • adbシェルコマンド( #svc usb resetUsbGadget )を使用してUSBポートリセットAPIを呼び出します。
  • テスト対象デバイス(DUT)が切断および再接続できるかどうかを確認します。