Kablosuz ağı test etme, hata ayıklama ve ayarlama

Bu sayfada, AOSP'de sağlanan araçları kullanarak kablosuz ağ uygulamasını nasıl test edeceğiniz, hata ayıklama yapacağınız ve ayarlayacağınız açıklanmaktadır.

Test

AOSP, kablosuz ağ çerçevesini test etmek için birim testleri ve CTS testlerinin bir karışımını sunar.

Birim testleri

AOSP, varsayılan kablosuz ağ çerçevesiyle (hem Wi-Fi Yöneticisi (uygulama tarafı kodu) hem de Wi-Fi Hizmeti için) işlevsel ve birim testleri içerir.

Kablosuz Ağ Yöneticisi testleri:

  • Adres: 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
    

Wi-Fi Hizmeti testleri:

  • Konum: 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

Compatibility Test Suite (CTS), Wi-Fi çerçevesiyle ilgili testler içerir. Bunlar cts/tests/tests/net/src/android/net/wifi bölgesinde bulunmaktadır. Kablosuz CTS testleri, test edilen cihazın test çalıştırmasının başında 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 giderilmesini 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 tamponları her zaman açık olabilir. Kötü bir durum algılandığında hata raporları otomatik olarak tetiklenebilir (yalnızca userdebug ve eng derlemelerinde). Wi-Fi HAL (AIDL veya HIDL 1.2 veya sonraki sürümler) kullanıldığında, donanım yazılımı hata ayıklama arabellekleri, IPC maliyetlerinden tasarruf etmek için çerçeve yerine HAL'de saklanır.

Uygulama

Referans uygulama için Satıcı HAL'indeki varsayılan uygulamaya bakın.

Donanım yazılımı günlüğünü devre dışı bırakmak için config_wifi_enable_wifi_firmware_debugging kaynağını false olarak ayarlayabilirsiniz.

Manuel test

Mezar taşı dizininde bulunan eski dosyaların silindiğini doğrulamak için bu manuel testi çalıştırın.

  1. Kablosuz ayarını açık duruma getirin.
  2. Bir ağa bağlanın.
  3. Hata raporu oluşturun.
  4. Hata raporunun ZIP dosyasını inceleyin ve arşivlenen 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 dumpsys bölümü
    • HIDL HAL'si: /lshal-debug/android.hardware.wifi@1.x::IWifi_default.txt

Yapılandırma ayarı

Kablosuz bağlantı çerçevesi, bir cihazın bir ağla ilişki kurduğu veya ağdan ayrıldığı sinyal gücünü kontrol etmek için 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 depolanır (bad parametresi çıkış RSSI eşiğini ifade eder):

  • 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

Parametreler <root>/frameworks/base/core/res/res/values/config.xml içinde depolanır ve yer paylaşımlı <root>/device/<dev_dir>/overlay/frameworks/base/core/res/res/values/config.xml dosyası kullanılarak aşırı yüklenebilir.

adb komutlarını kullanarak cihazı yapılandırarak yeni eşikleri test edebilirsiniz. (Alternatif olarak, yeni yer paylaşımları içeren bir derleme oluşturabilirsiniz ancak adb komutlarını kullanarak daha hızlı bir test süresi elde edebilirsiniz.)

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ılanlardır):

adb shell settings put global wifi_score_params \
                       rssi2=-85:-85:-73:-60,rssi5=-82:-82:-70:-57

Yerleşik parametre değerlerini geri yüklemek (yani geçersiz kılma işlemlerini kaldırmak) için aşağıdaki adb komutunu kullanın:

adb shell settings delete global wifi_score_params