توضّح هذه الصفحة كيفية اختبار تنفيذ 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 (الإصدار 1.2 من AIDL أو HIDL أو الإصدارات الأحدث)، يتم تخزين ملفّات التخزين المؤقت لتصحيح الأخطاء في البرامج الثابتة في حزمة HAL بدلاً من إطار العمل لتوفير تكاليف واجهة برمجة التطبيقات.
التنفيذ
للحصول على مرجع لتنفيذ، اطّلِع على التنفيذ التلقائي في Vendor HAL.
يمكنك إيقاف تسجيل البرامج الثابتة من خلال ضبط المورد،
config_wifi_enable_wifi_firmware_debugging
، على false.
الاختبار اليدوي
يمكنك إجراء هذا الاختبار اليدوي للتحقّق من حذف الملفات القديمة في دليل tombstone.
- فعِّل شبكة Wi-Fi.
- اتّصل بشبكة.
- أنشئ تقرير خطأ.
راجِع ملف ZIP الخاص بتقرير الأخطاء وتأكَّد من توفّر سجلّات البرامج الثابتة المؤرشفة. يمكن العثور على السجلّات في المواقع التالية:
- AIDL HAL: قسم
dumpsys
من ملف bugreport الرئيسي - HIDL HAL:
/lshal-debug/android.hardware.wifi@1.x::IWifi_default.txt
- AIDL HAL: قسم
ضبط الإعدادات
للتحكّم في قوة الإشارة التي يرتبط بها الجهاز بشبكة أو يفصلها، يستخدم إطار عمل 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