AOSP-তে দেওয়া টুল ব্যবহার করে কীভাবে Wi-Fi প্রয়োগ করা হয়েছে তা পরীক্ষা করা, ডিবাগ করা এবং টিউন করা যায় তা এই পৃষ্ঠায় বর্ণনা করা হয়েছে।
পরীক্ষা করা
ওয়াই-ফাই ফ্রেমওয়ার্ক পরীক্ষা করার জন্য, AOSP ইউনিট টেস্ট ও CTS টেস্টের একটি মিশ্রণ প্রদান করে।
ইউনিট টেস্ট
AOSP-তে ডিফল্ট ওয়াই-ফাই ফ্রেমওয়ার্কের জন্য কার্যকরী ও ইউনিট টেস্ট অন্তর্ভুক্ত থাকে: ওয়াই-ফাই ম্যানেজার (অ্যাপ-সাইড কোড) ও ওয়াই-ফাই পরিষেবা, দু'টির জন্যই ।
ওয়াই-ফাই ম্যানেজার টেস্ট:
packages/modules/Wifi/framework/tests/-এ অবস্থিতনিম্নলিখিত শেল এক্সিকিউটেবল ব্যবহার করে রান করুন (আরও এক্সিকিউশন বিকল্পের জন্য ফাইলটি পড়ুন):
atest FrameworksWifiApiTests
ওয়াই-ফাই পরিষেবা পরীক্ষা:
packages/modules/Wifi/service/tests/wifitests/-এ অবস্থিতনিম্নলিখিত শেল এক্সিকিউটেবল ব্যবহার করে রান করুন (আরও এক্সিকিউশন বিকল্পের জন্য ফাইলটি পড়ুন):
atest FrameworksWifiTests
CTS পরীক্ষা
কম্প্যাটিবিলিটি টেস্ট স্যুট (CTS)-এ
ওয়াই-ফাই ফ্রেমওয়ার্কের জন্য টেস্ট অন্তর্ভুক্ত থাকে। এগুলি
cts/tests/tests/net/src/android/net/wifi-এ অবস্থিত। Wi-Fi CTS টেস্টের জন্য টেস্ট রান শুরু করার সময়
টেস্ট করা হচ্ছে এমন ডিভাইসকে অ্যাক্সেস পয়েন্টের সাথে অ্যাসোসিয়েট করতে হয়।
ডিবাগিংয়ের জন্য উন্নত লগিং বিকল্প
Android 9-এ ওয়াই-ফাই লগিং উন্নত করা হয়েছে যাতে ওয়াই-ফাই সংক্রান্ত সমস্যার সমাধান করা আরও সহজ হয়। Android 9 বা তার পরবর্তী ভার্সনে, ড্রাইভার বা ফার্মওয়্যার রিং বাফার সবসময় চালু থাকতে পারে। খারাপ অবস্থা শনাক্ত করা হলে, সমস্যা সম্পর্কিত রিপোর্ট অটোমেটিক ট্রিগার করা যেতে পারে (শুধুমাত্র userdebug এবং eng বিল্ডে)। Wi-Fi HAL (AIDL বা HIDL ভার্সন 1.2 বা তার পরবর্তী যেকোনও ভার্সন) ব্যবহার করা হলে, IPC খরচ বাঁচানোর জন্য ফ্রেমওয়ার্কের পরিবর্তে HAL-এ ফার্মওয়্যার ডিবাগ বাফার সেভ করা হয়।
প্রয়োগ
রেফারেন্স প্রয়োগের জন্য, ভেন্ডর HAL-এ ডিফল্ট প্রয়োগ দেখুন।
আপনি রিসোর্স,
config_wifi_enable_wifi_firmware_debugging-এর মান false সেট করে ফার্মওয়্যার লগিং বন্ধ করতে পারবেন।
ম্যানুয়াল টেস্ট
টমস্টোন ডিরেক্টরিতে থাকা পুরনো ফাইল মুছে ফেলা হচ্ছে কিনা তা যাচাই করতে এই ম্যানুয়াল পরীক্ষা চালান।
- ওয়াই-ফাই চালু করুন।
- নেটওয়ার্কে কানেক্ট করুন।
- সমস্যার রিপোর্ট তৈরি করুন।
বাগ রিপোর্ট জিপ ফাইলটি ভালোভাবে দেখুন এবং যাচাই করুন যে আর্কাইভ করা ফার্মওয়্যার লগ আছে। নিম্নলিখিত লোকেশনে লগ পাওয়া যায়:
- AIDL HAL: মূল সমস্যার রিপোর্ট ফাইলের
dumpsysবিভাগ - HIDL HAL:
/lshal-debug/android.hardware.wifi@1.x::IWifi_default.txt
- AIDL HAL: মূল সমস্যার রিপোর্ট ফাইলের
কনফিগারেশন টিউনিং
কোনও ডিভাইস যে সিগন্যাল শক্তিতে নেটওয়ার্কের সাথে যুক্ত হয় বা বিচ্ছিন্ন হয় তা নিয়ন্ত্রণ করতে, ওয়াই-ফাই ফ্রেমওয়ার্ক এন্ট্রি ও এক্সিট 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