وضع وقت الاستجابة المنخفض لشبكة Wi-Fi

يوسّع Android 10 نطاق واجهة برمجة التطبيقات لقفل شبكة Wi-Fi للسماح الحساسة لوقت الاستجابة لضبط شبكة Wi-Fi على وقت استجابة سريع . يبدأ وقت الاستجابة السريع عند استيفاء جميع الشروط التالية:

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

لإتاحة وضع وقت الاستجابة المنخفض على الأجهزة، يجب على الشركات المصنّعة للأجهزة تحديث برنامج تشغيل WLAN وHAL للبائع. في وضع وقت الاستجابة المنخفض، يوفر وضع توفير الطاقة (المعروف أيضًا باسم حالة القيلولة في معيار IEEE 802.11) بشكل صريح من خلال إطار العمل. يمكن تعذر عمل معلمات البحث والتجوال في طبقات برنامج التشغيل والبرامج الثابتة محسّنة لتقليل وقت استجابة Wi-Fi بشكل أكبر. التحسينات الدقيقة هي التنفيذ.

يتضمّن Android وضع قفل Wi-Fi عالي الأداء (تم طرحه في المستوى 12 من واجهة برمجة التطبيقات) وهو منفصل عن وضع وقت الاستجابة المنخفض

التنفيذ

لدعم ميزة وضع وقت الاستجابة المنخفض في Wi-Fi، قدم تطبيقات دوال IWifiChip التالية

في اتفاقية AIDL HAL:

  • int getFeatureSet()
  • void setLatencyMode(in LatencyMode mode)

في HIDL HAL (1.3 أو إصدار أحدث):

  • getCapabilities_1_3() generates (WifiStatus status, bitfield<ChipCapabilityMask> capabilities)
  • setLatencyMode(LatencyMode mode) generates (WifiStatus status)

يمكنك العثور على عنصر مرجعي في wifi_legacy_hal.cpp مع الدوال التالية:

  • wifi_error wifi_get_supported_feature_set(wifi_interface_handle iface, feature_set *set)
  • wifi_error wifi_set_latency_mode(wifi_interface_handle handle, wifi_latency_mode mode)

ففي وضع وقت الاستجابة المنخفض، يتم إيقاف توفير الطاقة بشكل صريح من خلال WifiLockManager في إطار عمل Android. ولدعم ذلك، يجب أن يدعم برنامج تشغيل شبكة WLAN الأمر NL80211، NL80211_CMD_SET_POWER_SAVE، لتفعيل ميزة "توفير الطاقة" وإيقافها. عند تشغيل شبكة Wi-Fi تم إيقاف الحفظ، يجب أن يظل نظام Wi-Fi في حالة التنشيط ويكون جاهزًا إرسال أو استلام الحزم بأقل قدر من التأخير.

إيقاف الميزة

لإيقاف ميزة وضع وقت الاستجابة المنخفض، يُرجى تحديث الرمز الأساسي getFeatureSet() لترخيص AIDL HAL أو getCapabilities_1_3() لـ HIDL HAL، بحيث أن capabilities & SET_LATENCY_MODE = 0، حيث يتم تعريف SET_LATENCY_MODE في تعريف IWifiChip AIDL أو HIDL. وعند إيقاف هذه الميزة، يوقف إطار العمل توفير الطاقة فقط عندما يكون وضع وقت الاستجابة المنخفض نشطًا.

التحقُّق

لاختبار عمل وضع وقت الاستجابة السريع عند تفعيله، شغِّل وإجراء اختبارات وقت استجابة اختبار الاتصال يدويًا.

الاختبار الآلي

نفِّذ اختبارات VTS وCTS التالية:

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

معدات الاختبار والبيئة المطلوبة

لإجراء الاختبار اليدوي، يجب إجراء عملية الإعداد التالية:

  • نقطة وصول Wi-Fi
  • الهاتف وكمبيوتر الاختبار الذي يخضعان للاختبار (DUT)

    • يجب توصيل تطبيق DUT بنقطة الوصول عبر شبكة Wi-Fi.
    • يجب توصيل جهاز الكمبيوتر الاختباري بنقطة الوصول عبر شبكة Wi-Fi أو إيثرنت
    • يجب توصيل جهاز الكمبيوتر الاختباري بوحدة DUT عبر USB.
  1. تفعيل وضع وقت الاستجابة البطيء

    adb root
    adb shell cmd wifi force-low-latency-mode enabled
    
  2. تأكّد من اتصال جهاز الكمبيوتر بالهاتف من خلال ADB. مِن واجهة ADB، تعمل على اختبار اتصال البوابة باستمرار لمدة 3 ساعات في ثانية واحدة الفترات.

  3. احفظ ناتج الاختبار في ملف نصي واستخدِم جدول بيانات أو Python. برنامج نصي لإنشاء مدرج تكراري لنتائج اختبار وقت استجابة اختبار الاتصال.

  4. كرِّر الخطوات من 1 إلى 3 مع إيقاف وضع وقت الاستجابة.

    adb root
    adb shell cmd wifi force-low-latency-mode disabled
    
  5. قارن نتائج الاختبار للتأكد من أن متوسط قيمة وقت استجابة فحص الاتصال ويتم خفضه عند تفعيل وضع وقت الاستجابة المنخفض.

  1. تفعيل وضع وقت الاستجابة المنخفض

    adb root
    adb shell cmd wifi force-low-latency-mode enabled
    
  2. من سطر الأوامر في جهاز الكمبيوتر الاختباري، يمكنك فحص عنوان IP للهاتف بشكل مستمر لمدة 3 ساعات على فترات زمنية تبلغ ثانية واحدة.

  3. احفظ ناتج الاختبار في ملف نصي واستخدِم جدول بيانات أو Python. برنامج نصي لإنشاء مدرج تكراري لنتائج اختبار وقت استجابة اختبار الاتصال.

  4. كرِّر الخطوات من 1 إلى 3 مع إيقاف وضع وقت الاستجابة.

    adb root
    adb shell cmd wifi force-low-latency-mode disabled
    
  5. قارن نتائج الاختبار للتأكد من أن متوسط قيمة وقت استجابة فحص الاتصال ويتم خفضه عند تفعيل وضع وقت الاستجابة المنخفض.

الاختبارات الأخرى

كرِّر الاختبارات المذكورة أعلاه في بيئات مختلفة. على سبيل المثال، في المنزل أو المكتب.