অ্যান্ড্রয়েড ১০ ওয়াই-ফাই লক এপিআই প্রসারিত করে যাতে ল্যাটেন্সি-সংবেদনশীল অ্যাপগুলিকে কম-লেটেন্সি মোডে ওয়াই-ফাই কনফিগার করার অনুমতি দেওয়া হয়। নিম্ন-লেটেন্সি মোড শুরু হয় যখন নিম্নলিখিত সমস্ত শর্ত পূরণ হয়:
- Wi-Fi সক্ষম আছে এবং ডিভাইসটিতে ইন্টারনেট অ্যাক্সেস আছে।
- অ্যাপটি একটি Wi-Fi লক তৈরি করেছে এবং অর্জন করেছে, এবং এটি ফোরগ্রাউন্ডে চলছে।
- স্ক্রিন চালু আছে।
ডিভাইসগুলিতে লো-লেটেন্সি মোড সমর্থন করার জন্য, ডিভাইস নির্মাতাদের অবশ্যই WLAN ড্রাইভার এবং বিক্রেতা HAL আপডেট করতে হবে। লো-লেটেন্সি মোডে, পাওয়ার সেভ (IEEE 802.11 স্ট্যান্ডার্ডে ডোজ স্টেট নামেও পরিচিত) ফ্রেমওয়ার্ক দ্বারা স্পষ্টভাবে অক্ষম করা হয়। ড্রাইভার এবং ফার্মওয়্যার স্তরগুলিতে স্ক্যানিং এবং রোমিং প্যারামিটারগুলি ওয়াই-ফাই লেটেন্সি আরও কমাতে অপ্টিমাইজ করা যেতে পারে। সঠিক অপ্টিমাইজেশনগুলি বাস্তবায়ন নির্দিষ্ট।
অ্যান্ড্রয়েডের একটি উচ্চ-কার্যক্ষমতাসম্পন্ন ওয়াই-ফাই লক মোড রয়েছে (এপিআই লেভেল ১২-এ প্রবর্তিত) যা লো-লেটেন্সি মোড থেকে আলাদা।
বাস্তবায়ন
ওয়াই-ফাই লো-লেটেন্সি মোড বৈশিষ্ট্যটি সমর্থন করার জন্য, নিম্নলিখিত IWifiChip ফাংশনগুলির জন্য বাস্তবায়ন প্রদান করুন।
AIDL HAL-এ:
-
int getFeatureSet() -
void setLatencyMode(in LatencyMode mode)
HIDL HAL-এ (১.৩ বা তার নতুন):
-
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 দ্বারা পাওয়ার সেভ স্পষ্টভাবে অক্ষম করা হয়। এটি সমর্থন করার জন্য, WLAN ড্রাইভারকে NL80211 কমান্ড, NL80211_CMD_SET_POWER_SAVE সমর্থন করতে হবে, পাওয়ার সেভ সক্ষম এবং অক্ষম করতে। যখন Wi-Fi পাওয়ার সেভ অক্ষম করা হয়, তখন Wi-Fi সিস্টেমটি জাগ্রত অবস্থায় থাকতে হবে এবং ন্যূনতম বিলম্বের সাথে প্যাকেট প্রেরণ বা গ্রহণের জন্য প্রস্তুত থাকতে হবে।
বৈশিষ্ট্যটি অক্ষম করুন
লো-লেটেন্সি মোড বৈশিষ্ট্যটি বন্ধ করতে, AIDL HAL এর জন্য getFeatureSet() অথবা HIDL HAL এর জন্য getCapabilities_1_3() এর অন্তর্নিহিত কোডটি আপডেট করুন, যাতে capabilities & SET_LATENCY_MODE = 0 , যেখানে SET_LATENCY_MODE IWifiChip AIDL বা HIDL সংজ্ঞায় সংজ্ঞায়িত করা হয়েছে। যখন এই বৈশিষ্ট্যটি অক্ষম করা হয়, তখনই লো-লেটেন্সি মোড সক্রিয় থাকলে ফ্রেমওয়ার্ক পাওয়ার সেভ অক্ষম করে।
বৈধতা
সক্রিয় থাকা অবস্থায় লো-লেটেন্সি মোড কাজ করে কিনা তা পরীক্ষা করার জন্য, নিম্নলিখিত স্বয়ংক্রিয় পরীক্ষা এবং ম্যানুয়াল পিং ল্যাটেন্সি পরীক্ষা চালান।
স্বয়ংক্রিয় পরীক্ষা
নিম্নলিখিত ভেন্ডর টেস্ট স্যুট (VTS) এবং কম্প্যাটিবিলিটি টেস্ট স্যুট (CTS) পরীক্ষাগুলি চালিয়ে স্বয়ংক্রিয় পরীক্ষা সম্পাদন করুন:
- ভিটিএস (এআইডিএল):
hardware/interfaces/wifi/aidl/vts/functional/wifi_chip_aidl_test.cpp - VTS (HIDL):
hardware/interfaces/wifi/1.3/vts/functional/wifi_chip_hidl_test.cpp - সিটিএস:
cts/tests/tests/net/src/android/net/wifi/cts/WifiLockTest.java
ম্যানুয়াল পরীক্ষা
প্রয়োজনীয় পরীক্ষার সরঞ্জাম এবং পরিবেশ
ম্যানুয়াল পরীক্ষার জন্য, নিম্নলিখিত সেটআপ প্রয়োজন:
- ওয়াই-ফাই অ্যাক্সেস পয়েন্ট (এপি)
- ডিভাইস-আন্ডার-টেস্ট (DUT) ফোন এবং টেস্ট কম্পিউটার
- DUT অবশ্যই Wi-Fi এর মাধ্যমে অ্যাক্সেস পয়েন্টের সাথে সংযুক্ত থাকতে হবে।
- পরীক্ষামূলক কম্পিউটারটি অবশ্যই Wi-Fi অথবা ইথারনেটের মাধ্যমে অ্যাক্সেস পয়েন্টের সাথে সংযুক্ত থাকতে হবে।
- পরীক্ষামূলক কম্পিউটারটি USB এর মাধ্যমে DUT-এর সাথে সংযুক্ত থাকতে হবে।
আপলিংক পিং পরীক্ষা
কম ল্যাটেন্সি মোড সক্ষম করুন।
adb root adb shell cmd wifi force-low-latency-mode enabledনিশ্চিত করুন যে আপনার কম্পিউটারটি অ্যান্ড্রয়েড ডিবাগ ব্রিজ (ADB) এর মাধ্যমে ফোনের সাথে সংযুক্ত আছে। ADB শেল থেকে, ১ সেকেন্ডের ব্যবধানে ৩ ঘন্টা ধরে একটানা গেটওয়ে পিং করুন।
পরীক্ষার আউটপুটটি একটি টেক্সট ফাইলে সংরক্ষণ করুন এবং পিং ল্যাটেন্সি পরীক্ষার ফলাফলের একটি হিস্টোগ্রাম তৈরি করতে একটি স্প্রেডশিট বা পাইথন স্ক্রিপ্ট ব্যবহার করুন।
ল্যাটেন্সি মোড নিষ্ক্রিয় রেখে ১ থেকে ৩ ধাপ পুনরাবৃত্তি করুন।
adb root adb shell cmd wifi force-low-latency-mode disabledলো-লেটেন্সি মোড সক্রিয় থাকলে গড় পিং ল্যাটেন্সি মান কমে যায় কিনা তা যাচাই করতে পরীক্ষার ফলাফল তুলনা করুন।
ডাউনলিংক পিং পরীক্ষা
কম-বিলম্ব মোড সক্ষম করুন।
adb root adb shell cmd wifi force-low-latency-mode enabledপরীক্ষামূলক কম্পিউটারের কমান্ড লাইন থেকে, ১ সেকেন্ডের ব্যবধানে ৩ ঘন্টা ধরে একটানা ফোনের আইপি ঠিকানা পিং করুন।
পরীক্ষার আউটপুটটি একটি টেক্সট ফাইলে সংরক্ষণ করুন এবং পিং ল্যাটেন্সি পরীক্ষার ফলাফলের একটি হিস্টোগ্রাম তৈরি করতে একটি স্প্রেডশিট বা পাইথন স্ক্রিপ্ট ব্যবহার করুন।
ল্যাটেন্সি মোড নিষ্ক্রিয় রেখে ১ থেকে ৩ ধাপ পুনরাবৃত্তি করুন।
adb root adb shell cmd wifi force-low-latency-mode disabledলো-লেটেন্সি মোড সক্রিয় থাকলে গড় পিং ল্যাটেন্সি মান কমে যায় কিনা তা যাচাই করতে পরীক্ষার ফলাফল তুলনা করুন।
অন্যান্য পরীক্ষা
পূর্ববর্তী পরীক্ষাগুলি বিভিন্ন পরিবেশে পুনরাবৃত্তি করুন। উদাহরণস্বরূপ, বাড়িতে বা অফিসে।