توضّح هذه الصفحة كيفية اختبار وتنقيح وضبط عملية تنفيذ شبكة 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. تتطلّب اختبارات Wi-Fi في مجموعة أدوات اختبار التوافق (CTS) ربط الجهاز قيد الاختبار بنقطة وصول في بداية تشغيل الاختبار.
خيارات تسجيل محسّنة لتصحيح الأخطاء
في Android 9، تم تحسين تسجيل أحداث Wi-Fi لتسهيل تصحيح أخطاء مشاكل Wi-Fi. في Android 9 أو إصدار أحدث، يمكن أن تكون المخازن المؤقتة الحلقية لبرنامج التشغيل أو البرامج الثابتة مفعّلة دائمًا. يمكن أن يتم تلقائيًا إنشاء تقارير الأخطاء عند رصد حالة غير جيدة (في إصدارَي userdebug وeng فقط). عند استخدام Wi-Fi HAL (الإصدار 1.2 أو إصدار أحدث من AIDL أو HIDL)، يتم تخزين المخازن المؤقتة لتصحيح أخطاء البرامج الثابتة في HAL بدلاً من إطار العمل لتوفير تكاليف الاتصال بين العمليات (IPC).
التنفيذ
للحصول على تنفيذ مرجعي، يُرجى الاطّلاع على الـ تنفيذ التلقائي في Vendor HAL.
يمكنك إيقاف تسجيل أحداث البرامج الثابتة عن طريق ضبط المورد config_wifi_enable_wifi_firmware_debugging على false.
الاختبار اليدوي
أجرِ هذا الاختبار اليدوي للتأكّد من حذف الملفات القديمة في دليل tombstone.
- فعِّل شبكة Wi-Fi.
- اتّصِل بشبكة.
- أنشِئ تقرير أخطاء.
افحص ملف ZIP لتقرير الأخطاء وتأكَّد من وجود سجلّات البرامج الثابتة المؤرشفة. يمكن العثور على السجلّات في المواقع التالية:
- AIDL HAL: قسم
dumpsysفي ملف تقرير الأخطاء الرئيسي - 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_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
يتم تخزين المَعلمات في
<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