Fitur Wi-Fi Langsung, juga dikenal sebagai Wi-Fi P2P, memungkinkan perangkat pendukung untuk menemukan dan terhubung satu sama lain secara langsung menggunakan protokol Wi-Fi Langsung tanpa akses internet atau jaringan seluler. Fitur ini, dibangun berdasarkan Wi-Fi Alliance (WFA) Spesifikasi Wi-Fi Langsung memungkinkan berbagi data dengan throughput tinggi di antara perangkat dan aplikasi tepercaya yang berada di luar jaringan.
Contoh dan sumber
Untuk menggunakan fitur ini, produsen perangkat harus mengimplementasikan antarmuka Vendor Wi-Fi dan Supplicant HAL.
Di Android 13, antarmuka Supplicant menggunakan AIDL untuk definisi HAL. Di Android 14 dan yang lebih tinggi, antarmuka HAL Vendor menggunakan AIDL. Di Android 12 dan yang lebih lama, antarmuka Supplicant dan Vendor HAL ditentukan menggunakan HIDL.
Platform Wi-Fi HAL berikut diperlukan untuk menggunakan fitur Wi-Fi Langsung:
hardware/interfaces/wifi/aidl
atau,hardware/interfaces/wifi/1.3
atau yang lebih tinggihardware/interfaces/wifi/supplicant/aidl
atau,hardware/interfaces/wifi/supplicant/1.2
atau yang lebih tinggi
Penerapan
Produsen perangkat harus memberikan dukungan framework dan HAL/firmware:
- Framework:
- Kode AOSP
- Aktifkan Wi-Fi Langsung: Memerlukan tombol fitur
- Dukungan HAL Wi-Fi Direct (P2P) (yang menyiratkan dukungan firmware)
Untuk mengimplementasikan fitur ini, produsen perangkat mengimplementasikan antarmuka Wi-Fi HIDL atau AIDL
dan mengaktifkan tombol fitur untuk Wi-Fi Langsung. Pada device.mk
yang terletak
di device/<oem>/<device>
, ubah variabel lingkungan PRODUCT_COPY_FILES
untuk menyertakan dukungan bagi fitur Wi-Fi Langsung:
```
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 lain untuk mendukung Wi-Fi Langsung disertakan dalam AOSP.
Pengacakan MAC
Android mengharuskan alamat perangkat dan alamat antarmuka Wi-Fi Langsung diacak. Alamat tersebut harus berbeda dari alamat MAC perangkat yang sebenarnya dan harus memenuhi persyaratan berikut:
- Alamat perangkat Wi-Fi Langsung harus diacak pada saat pembuatan antarmuka jika tidak ada grup persisten yang disimpan; jika tidak, alamat perangkat harus tetap menggunakan alamat MAC yang dihasilkan terakhir.
- Alamat antarmuka Wi-Fi Langsung, juga dikenal sebagai alamat grup, harus diacak setiap kali koneksi dibuat.
Pengacakan MAC Wi-Fi Langsung 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
ISupplicantP2pIface::setMacRandomization
API Wi-Fi Supplicant. Bergantung pada antarmuka yang diimplementasikan, hal ini berlaku di:hardware/interface/wifi/supplicant/1.2
untuk HIDLhardware/interface/wifi/supplicant/aidl
untuk AIDL
- Tetapkan
config_wifi_p2p_mac_randomization_supported
ke '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 Langsung. Wi-Fi Langsung juga dapat diuji menggunakan Vendor Test Suite (VTS).
Pengujian Unit
Verifikasi paket Wi-Fi Langsung menggunakan pengujian berikut.
Pengujian layanan:
atest com.android.server.wifi.p2p
Pengelola menguji:
atest android.net.wifi.p2p
Pengujian Compatibility Test Suite (CTS)
Gunakan uji CTS untuk memvalidasi fitur Wi-Fi Langsung. CTS mendeteksi saat fitur diaktifkan dan otomatis menyertakan pengujian terkait.
Untuk memicu uji CTS, jalankan:
% atest android.net.wifi.p2p.cts
Uji Pemverifikasi CTS
Pengujian CTS Verifier memvalidasi perilaku Wi-Fi Langsung menggunakan dua perangkat: perangkat uji dan perangkat berkualitas bagus. Untuk menjalankan pengujian, buka CTS Verifier dan buka bagian berjudul Wi-Fi Direct Test.