USB Port Reset API

Untuk mendukung API Hardware Abstraction Layer (HAL) USB, produsen perangkat harus menerapkan versi HAL USB yang sesuai. Untuk menggunakan USB HAL API, aplikasi dengan hak istimewa sistem diperlukan.

HAL USB mendukung USB Port Reset API, yang memerlukan HAL USB v2.0 dan tersedia untuk perangkat yang menjalankan Android 13 dan yang lebih tinggi. Gunakan API ini untuk mereset koneksi USB dengan host yang terhubung.

Menemukan HAL USB dan API-nya

Produsen perangkat harus menerapkan HAL USB untuk mendukung API.

  1. Untuk menemukan implementasi default USB HAL, gunakan jalur berikut:

    Version AIDL (terbaru): <aosp>/hardware/interfaces/usb/gadget/1.2/default/

  2. Untuk menemukan file header antarmuka hardware, gunakan jalur berikut:

    Version AIDL (terbaru): <aosp>/hardware/interfaces/usb/gadget/1.2/IUsbGadget.hal

  3. Untuk menemukan API, gunakan jalur berikut untuk menemukan API di bawah file header AIDL. Jalur ini juga merupakan titik entri Android Framework untuk API:

    android.hardware.usb: <aosp>/core/java/android/hardware/usb

Menerapkan HAL USB

Untuk menggunakan USB HAL API, terapkan:

  1. Versi HAL USB yang benar. Tidak diperlukan penerapan UI sistem.

  2. HAL AIDL USB untuk USB Port Reset API dengan mereset koneksi USB antara perangkat target dan host.

Memahami arsitektur USB HAL API

USB HAL API dibangun ke dalam paket android.hardware.usb dan memanfaatkan USB HAL untuk berinteraksi dengan perangkat. Detail tentang arsitektur untuk API disediakan dalam gambar di bawah.

USB Port Reset API

Gambar berikut mengilustrasikan alur kode USB Port Reset API dalam framework, termasuk penerapan USB HAL.

Contoh alur kode USB Port Reseat API

Gambar 1.1 Alur kode contoh USB Port Reseat API.

Memvalidasi penerapan

Setiap versi USB HAL dan API yang sesuai dikaitkan dengan kasus pengujian di Vendor Test Suite (VTS).

USB Port Reset API

Untuk menemukan kasus pengujian VTS untuk USB Port Reset API, buka:

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

Kasus pengujian VTS untuk USB HAL v1.2 adalah kasus pengujian sisi host yang dapat Anda gunakan untuk melakukan tindakan ini.

  • Untuk memanggil USB Port Reset API, gunakan perintah adb shell (#svc usb resetUsbPort).

  • Pastikan perangkat yang sedang diuji (DUT) dapat berhenti menghubungkan dan menghubungkan kembali.