Fitur Wi-Fi Langsung, juga dikenal sebagai Wi-Fi P2P, memungkinkan perangkat yang kompatibel untuk saling menemukan dan terhubung secara langsung menggunakan protokol Wi-Fi Langsung tanpa akses internet atau jaringan seluler. Fitur ini, yang dibangun berdasarkan spesifikasi Wi-Fi Direct Wi-Fi Alliance (WFA), memungkinkan berbagi data throughput tinggi di antara perangkat dan aplikasi tepercaya yang tidak terhubung ke jaringan.
Contoh dan sumber
Untuk menggunakan fitur ini, produsen perangkat harus menerapkan antarmuka HAL Vendor dan Supplicant Wi-Fi.
Di Android 13, antarmuka Supplicant menggunakan AIDL untuk definisi HAL. Di Android 14 dan yang lebih tinggi, antarmuka Vendor HAL menggunakan AIDL. Di Android 12 dan yang lebih rendah, antarmuka Supplicant dan HAL Vendor ditentukan menggunakan HIDL.
Permukaan HAL Wi-Fi berikut diperlukan untuk menggunakan fitur Wi-Fi Direct:
hardware/interfaces/wifi/aidlatau,hardware/interfaces/wifi/1.3atau lebih tinggihardware/interfaces/wifi/supplicant/aidlatau,hardware/interfaces/wifi/supplicant/1.2atau lebih tinggi
Implementasi
Produsen perangkat harus menyediakan dukungan framework dan HAL/firmware:
- Framework:
- Kode AOSP
- Mengaktifkan Wi-Fi Direct: Memerlukan tombol fitur
- Dukungan HAL Wi-Fi Direct (P2P) (yang menyiratkan dukungan firmware)
Untuk menerapkan fitur ini, produsen perangkat menerapkan antarmuka HIDL atau AIDL Wi-Fi dan mengaktifkan tombol fitur untuk Wi-Fi Direct. Di device.mk yang terletak di device/<oem>/<device>, ubah variabel lingkungan PRODUCT_COPY_FILES untuk menyertakan dukungan untuk fitur Wi-Fi Direct:
PRODUCT_COPY_FILES +=
frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml
Semua persyaratan lainnya untuk mendukung Wi-Fi Direct disertakan dalam AOSP.
Pengacakan MAC
Android mewajibkan alamat perangkat Wi-Fi Direct dan alamat antarmuka diacak. Alamat MAC tersebut harus berbeda dengan alamat MAC sebenarnya dari perangkat dan harus memenuhi persyaratan berikut:
- Alamat perangkat Wi-Fi Direct harus diacak saat pembuatan antarmuka jika tidak ada grup persisten yang disimpan; jika tidak, alamat perangkat harus terus menggunakan alamat MAC yang terakhir dibuat.
- Alamat antarmuka Wi-Fi Direct, yang juga dikenal sebagai alamat grup, harus diacak setiap kali koneksi dibuat.
Pengacakan MAC Wi-Fi Direct diterapkan di 'wpa_supplicant' dan dikontrol
oleh dua konfigurasi, p2p_device_random_mac_addr dan
p2p_interface_random_mac_addr.
Untuk mengaktifkan fitur ini, produsen perangkat harus:
- Terapkan Wi-Fi Supplicant
ISupplicantP2pIface::setMacRandomizationAPI. Bergantung pada antarmuka yang diterapkan, ini ada di:hardware/interface/wifi/supplicant/1.2untuk HIDLhardware/interface/wifi/supplicant/aidluntuk AIDL
- Tetapkan
config_wifi_p2p_mac_randomization_supportedke 'true' di overlay kustom perangkat.
Validasi
Android menyediakan serangkaian pengujian unit, pengujian Compatibility Test Suite (CTS), dan pengujian CTS Verifier untuk memvalidasi fitur Wi-Fi Direct. Wi-Fi Direct juga dapat diuji menggunakan Vendor Test Suite (VTS).
Pengujian unit
Verifikasi paket Wi-Fi Direct menggunakan pengujian berikut.
Uji layanan:
atest com.android.server.wifi.p2pPengujian pengelola:
atest android.net.wifi.p2pPengujian Compatibility Test Suite (CTS)
Gunakan pengujian CTS untuk memvalidasi fitur Wi-Fi Direct. CTS mendeteksi saat fitur diaktifkan dan otomatis menyertakan pengujian terkait.
Untuk memicu pengujian CTS, jalankan:
atest android.net.wifi.p2p.ctsPengujian CTS Verifier
Pengujian CTS Verifier memvalidasi perilaku Wi-Fi Direct menggunakan dua perangkat: perangkat pengujian dan perangkat yang berfungsi dengan baik. Untuk menjalankan pengujian, buka CTS Verifier dan buka bagian berjudul Wi-Fi Direct Tests.