Halaman ini menjelaskan cara menguji, men-debug, dan menyesuaikan penerapan Wi-Fi menggunakan alat yang disediakan di AOSP.
Pengujian
Untuk menguji framework Wi-Fi, AOSP menyediakan campuran pengujian unit dan pengujian CTS.
Pengujian unit
AOSP menyertakan pengujian fungsional dan unit untuk framework Wi-Fi default: baik untuk Wi-Fi Manager (kode sisi aplikasi) maupun Wi-Fi Service.
Pengujian Pengelola Wi-Fi:
- Berlokasi di
packages/modules/Wifi/framework/tests/
Jalankan menggunakan shell yang dapat dieksekusi berikut (baca file untuk mengetahui opsi eksekusi lainnya):
atest FrameworksWifiApiTests
Pengujian Layanan Wi-Fi:
- Berlokasi di
packages/modules/Wifi/service/tests/wifitests/
Jalankan menggunakan shell yang dapat dieksekusi berikut (baca file untuk mengetahui opsi eksekusi lainnya):
atest FrameworksWifiTests
Pengujian CTS
Compatibility Test Suite (CTS) mencakup pengujian untuk framework Wi-Fi. Lokasinya berada di
cts/tests/tests/net/src/android/net/wifi
. Pengujian CTS Wi-Fi mengharuskan
perangkat yang diuji dikaitkan dengan Titik Akses di awal proses
pengujian.
Opsi pencatatan log yang ditingkatkan untuk proses debug
Android 9 meningkatkan kualitas logging Wi-Fi untuk memudahkan pen-debug-an masalah Wi-Fi. Di Android 9 atau yang lebih tinggi, buffer ring driver atau firmware dapat selalu aktif. Laporan bug dapat dipicu secara otomatis saat status buruk terdeteksi (hanya di build userdebug dan eng). Saat Wi-Fi HAL (AIDL atau HIDL versi 1.2 atau yang lebih tinggi) digunakan, buffer debug firmware disimpan di HAL, bukan framework, untuk menghemat biaya IPC.
Implementasi
Untuk implementasi referensi, lihat implementasi default di Vendor HAL.
Anda dapat menonaktifkan logging firmware dengan menyetel resource,
config_wifi_enable_wifi_firmware_debugging
, ke false.
Pengujian manual
Jalankan pengujian manual ini untuk memverifikasi bahwa file lama di direktori penanda dihapus.
- Aktifkan Wi-Fi.
- Hubungkan ke jaringan.
- Buat laporan bug.
Periksa file ZIP laporan bug dan verifikasi bahwa log firmware yang diarsipkan ada. Log ditemukan di lokasi berikut:
- AIDL HAL: Bagian
dumpsys
dari file bugreport utama - HIDL HAL:
/lshal-debug/android.hardware.wifi@1.x::IWifi_default.txt
- AIDL HAL: Bagian
Penyesuaian konfigurasi
Untuk mengontrol kekuatan sinyal saat perangkat terhubung atau terputus dari jaringan, framework Wi-Fi menggunakan nilai minimum dan maksimum RSSI.
Nilai minimum masuk dan keluar disimpan sebagai parameter konfigurasi yang dapat di-overload dengan nama berikut (dengan parameter bad
mengacu pada nilai minimum RSSI keluar):
config_wifi_framework_wifi_score_bad_rssi_threshold_5GHz
config_wifi_framework_wifi_score_entry_rssi_threshold_5GHz
config_wifi_framework_wifi_score_bad_rssi_threshold_24GHz
config_wifi_framework_wifi_score_entry_rssi_threshold_24GHz
Parameter disimpan di
<root>/frameworks/base/core/res/res/values/config.xml
dan dapat diganti
menggunakan file overlay
<root>/device/<dev_dir>/overlay/frameworks/base/core/res/res/values/config.xml
.
Anda dapat menguji nilai minimum baru dengan mengonfigurasi perangkat menggunakan perintah adb. (Atau, Anda dapat membuat build dengan overlay baru, tetapi menggunakan perintah adb memberikan waktu penyelesaian pengujian yang lebih cepat.)
adb shell settings put global wifi_score_params \
[rssi2|rssi5]=<bad>:<entry>:<low>:<good>
Misalnya, perintah berikut mengonfigurasi parameter nilai minimum baru (nilai yang digunakan dalam perintah contoh ini adalah nilai default yang dikonfigurasi dalam codebase AOSP):
adb shell settings put global wifi_score_params \
rssi2=-85:-85:-73:-60,rssi5=-82:-82:-70:-57
Untuk memulihkan nilai parameter bawaan (yaitu menghapus penggantian), gunakan perintah adb berikut:
adb shell settings delete global wifi_score_params