Bu sayfada, AOSP'de sağlanan araçları kullanarak Wi-Fi uygulamasının nasıl test edileceği, hata ayıklanacağı ve ayarlanacağı açıklanmaktadır.
Test
AOSP, kablosuz ağ çerçevesini test etmek için birim testleri ve CTS testleri karışımı sunar.
Birim testleri
AOSP, varsayılan kablosuz bağlantı çerçevesi için hem kablosuz bağlantı yöneticisi (uygulama tarafı kodu) hem de kablosuz bağlantı hizmeti için işlevsel ve birim testleri içerir.
Wi-Fi Yöneticisi testleri:
- Konumu:
packages/modules/Wifi/framework/tests/ Aşağıdaki kabuk yürütülebilir dosyasını kullanarak çalıştırın (daha fazla yürütme seçeneği için dosyayı okuyun):
atest FrameworksWifiApiTests
Kablosuz hizmet testleri:
- Konumu:
packages/modules/Wifi/service/tests/wifitests/ Aşağıdaki kabuk yürütülebilir dosyasını kullanarak çalıştırın (daha fazla yürütme seçeneği için dosyayı okuyun):
atest FrameworksWifiTests
CTS testleri
Uyumluluk Test Paketi (CTS), Wi-Fi çerçevesiyle ilgili testleri içerir. Bunlar cts/tests/tests/net/src/android/net/wifi konumunda yer alır. Kablosuz CTS testleri, test çalıştırmasının başında test edilen cihazın bir erişim noktasıyla ilişkilendirilmesini gerektirir.
Hata ayıklama için gelişmiş günlük kaydı seçenekleri
Android 9, kablosuz bağlantı sorunlarının hata ayıklamasını kolaylaştırmak için kablosuz bağlantı günlük kaydını iyileştirdi. Android 9 veya sonraki sürümlerde sürücü ya da donanım yazılımı halka arabellekleri her zaman açık olabilir. Hata raporları, kötü bir durum algılandığında otomatik olarak tetiklenebilir (yalnızca userdebug ve eng derlemelerinde). Wi-Fi HAL (AIDL veya HIDL sürüm 1.2 ya da daha yeni) kullanıldığında, IPC maliyetlerinden tasarruf etmek için bellenim hata ayıklama arabellekleri çerçeve yerine HAL'de saklanır.
Uygulama
Referans uygulama için Vendor HAL'deki varsayılan uygulamaya bakın.
Kaynak,config_wifi_enable_wifi_firmware_debugging değerini false olarak ayarlayarak donanım yazılımı günlüğünü devre dışı bırakabilirsiniz.
Manuel test
Tombstone dizinindeki eski dosyaların silindiğini doğrulamak için bu manuel testi çalıştırın.
- Kablosuz ayarını açık duruma getirin.
- Bir ağa bağlanın.
- Hata raporu oluşturun.
Hata raporu ZIP dosyasını inceleyin ve arşivlenmiş donanım yazılımı günlüklerinin mevcut olduğunu doğrulayın. Günlükler aşağıdaki konumlarda bulunur:
- AIDL HAL: Ana hata raporu dosyasının
dumpsysbölümü - HIDL HAL:
/lshal-debug/android.hardware.wifi@1.x::IWifi_default.txt
- AIDL HAL: Ana hata raporu dosyasının
Yapılandırmayı ayarlama
Bir cihazın ağa bağlanma veya ağdan ayrılma sinyal gücünü kontrol etmek için kablosuz ağ çerçevesi giriş ve çıkış RSSI eşiklerini kullanır.
Giriş ve çıkış eşikleri, aşağıdaki adlara sahip aşırı yüklenebilir yapılandırma parametreleri olarak saklanır (burada bad parametresi, çıkış RSSI eşiğini ifade eder):
config_wifi_framework_wifi_score_bad_rssi_threshold_5GHzconfig_wifi_framework_wifi_score_entry_rssi_threshold_5GHzconfig_wifi_framework_wifi_score_bad_rssi_threshold_24GHzconfig_wifi_framework_wifi_score_entry_rssi_threshold_24GHz
Parametreler <root>/frameworks/base/core/res/res/values/config.xml içinde saklanır ve yer paylaşımı dosyası <root>/device/<dev_dir>/overlay/frameworks/base/core/res/res/values/config.xml kullanılarak aşırı yüklenebilir.
Cihazı adb komutlarını kullanarak yapılandırarak yeni eşikleri test edebilirsiniz. (Alternatif olarak, yeni yer paylaşımlarıyla derleme oluşturabilirsiniz ancak adb komutlarını kullanarak daha hızlı test yapabilirsiniz.)
adb shell settings put global wifi_score_params \
[rssi2|rssi5]=<bad>:<entry>:<low>:<good>Örneğin, aşağıdaki komut yeni eşik parametrelerini yapılandırır (bu örnek komutta kullanılan değerler, AOSP kod tabanında yapılandırılmış varsayılan değerlerdir):
adb shell settings put global wifi_score_params \
rssi2=-85:-85:-73:-60,rssi5=-82:-82:-70:-57Yerleşik parametre değerlerini geri yüklemek (yani geçersiz kılmaları kaldırmak) için aşağıdaki adb komutunu kullanın:
adb shell settings delete global wifi_score_params