اختبار شبكة Wi-Fi وتصحيح أخطائها وضبطها

تصف هذه الصفحة كيفية اختبار تنفيذ Wi-Fi وتصحيحه وضبطه باستخدام للأدوات المقدمة في AOSP.

الاختبار

لاختبار إطار عمل Wi-Fi، توفّر AOSP مزيجًا من اختبارات الوحدات واختبارات CTS.

اختبارات الوحدات

يتضمّن إطار عمل AOSP اختبارات وظيفية واختبارات وحدات لإطار عمل Wi-Fi التلقائي: كلاهما لمدير Wi-Fi (الرمز البرمجي على جانب التطبيق) وخدمة Wi-Fi.

اختبارات "مدير شبكة Wi-Fi":

  • موجود في packages/modules/Wifi/framework/tests/
  • يمكنك التشغيل باستخدام الملف التنفيذي التالي لوحدة التحكّم (قراءة الملف للاطّلاع على المزيد من خيارات التنفيذ):

    atest FrameworksWifiApiTests

اختبارات خدمة Wi-Fi:

  • يقع في packages/modules/Wifi/service/tests/wifitests/
  • يمكنك التشغيل باستخدام الملف التنفيذي التالي لوحدة التحكّم (قراءة الملف للاطّلاع على المزيد من خيارات التنفيذ):

    atest FrameworksWifiTests

اختبارات CTS

تشمل مجموعة أدوات اختبار التوافق (CTS) اختبارات إطار عمل شبكة Wi-Fi تقع هذه في cts/tests/tests/net/src/android/net/wifi تتطلّب اختبارات CTS لأجهزة Wi-Fi أن يكون الجهاز الذي يتم اختباره مرتبطًا بنقطة وصول في بداية تنفيذ الاختبار .

خيارات تسجيل محسَّنة لتصحيح الأخطاء

حسَّن نظام التشغيل Android 9 ميزة تسجيل شبكة Wi-Fi لتسهيل تصحيح أخطاء شبكة Wi-Fi. في الإصدار 9 من نظام Android أو الإصدارات الأحدث، يمكن أن تكون المخازن المؤقتة حلقة لبرنامج التشغيل أو البرامج الثابتة قيد التشغيل دائمًا. يمكن تلقائيًا تفعيل تقارير الأخطاء عند رصد حالة غير طبيعية (في إصدارات userdebug وeng فقط). عند استخدام بروتوكول HAL لشبكة Wi-Fi (AIDL أو الإصدار 1.2 من HIDL أو إصدار أحدث)، البرامج الثابتة يتم تخزين المخازن الاحتياطية لتصحيح الأخطاء في HAL بدلاً من إطار العمل لتوفير تكاليف IPC.

التنفيذ

للحصول على مرجع، يُرجى مراجعة التنفيذ التلقائي في HAL للبائع.

يمكنك إيقاف تسجيل البرامج الثابتة من خلال ضبط المورد، config_wifi_enable_wifi_firmware_debugging، على false.

الاختبار اليدوي

نفِّذ هذا الاختبار اليدوي للتحقق من أن الملفات القديمة في جارٍ حذف دليل Tombstone

  1. فعِّل شبكة Wi-Fi.
  2. اتّصل بشبكة.
  3. أنشئ تقرير خطأ.
  4. افحص ملف Zip لتقرير الخطأ وتحقَّق من سجلات البرامج الثابتة المؤرشفة. الموجودة. يمكن العثور على السجلّات في المواقع التالية:

    • AIDL HAL: قسم dumpsys من ملف bugreport الرئيسي
    • HIDL HAL:‏ /lshal-debug/android.hardware.wifi@1.x::IWifi_default.txt

ضبط الإعدادات

للتحكّم في قوة الإشارة التي يرتبط بها الجهاز بشبكة أو يفصلها، يستخدم إطار عمل Wi-Fi حدود الدخول والخروج لإشارات RSSI.

يتم تخزين حدّي الدخول والخروج كمَعلمات ضبط قابلة للتحميل بالأسماء التالية (حيث تشير المَعلمة bad إلى حدّ RSSI للخروج):

  • 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

يتم تخزين المعلمات في <root>/frameworks/base/core/res/res/values/config.xml وقد تكون هناك زيادة في التحميل باستخدام ملف التراكب <root>/device/<dev_dir>/overlay/frameworks/base/core/res/res/values/config.xml

يمكنك اختبار الحدود الجديدة من خلال ضبط الجهاز باستخدام أوامر adb. (بدلاً من ذلك، يمكنك إنشاء إصدار يتضمّن تراكبًا جديدًا باستخدام أوامر adb، ما يؤدي إلى تسريع عملية الاختبار).

adb shell settings put global wifi_score_params \
                             [rssi2|rssi5]=<bad>:<entry>:<low>:<good>

على سبيل المثال، يضبط الأمر التالي مَعلمات حدّ جديدة (تكون القيمة المُستخدَمة في هذا المثال على سطر الأوامر هي القيمة التلقائية التي تم ضبطها في قاعدة بيانات AOSP):

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

لاستعادة قيم المَعلمات المضمّنة (أي إزالة عمليات الاستبدال)، استخدِم الأمر adb التالي:

adb shell settings delete global wifi_score_params