যাচাইকরণ এবং ডিবাগিং

ব্লুটুথ স্ট্যাক যাচাই এবং ডিবাগ করতে, AOSP এবং ব্লুটুথ স্পেশাল ইন্টারেস্ট গ্রুপের (SIG) পরীক্ষায় প্রদত্ত টুল ব্যবহার করুন।

পরীক্ষা এবং যাচাই করা

ব্লুটুথ স্ট্যাক পরীক্ষা করার জন্য, AOSP ব্লুটুথ প্রোফাইল টিউনিং স্যুটের জন্য ইউনিট পরীক্ষা, CTS পরীক্ষা এবং সরঞ্জামগুলির একটি মিশ্রণ সরবরাহ করে।

AOSP-এ ইউনিট পরীক্ষা

AOSP ডিফল্ট ব্লুটুথ স্ট্যাকের জন্য কার্যকরী এবং ইউনিট পরীক্ষা অন্তর্ভুক্ত করে। এই পরীক্ষাগুলি /packages/modules/Bluetooth/system/test/ এ অবস্থিত। AOSP পরীক্ষা চালানোর জন্য, নিম্নলিখিতগুলি করুন:

  1. অ্যান্ড্রয়েড রানটাইম বন্ধ করুন:
    adb shell stop
  2. পরীক্ষা ডিরেক্টরি থেকে, শেল এক্সিকিউটেবল ফাইলটি চালান এবং আপনি যদি একটি নির্দিষ্ট পরীক্ষা বা পরীক্ষা স্যুট চালাতে চান তবে বিকল্পগুলি অন্তর্ভুক্ত করুন:
    ./run_unit_tests.sh TEST_GROUP_NAME TEST_NAME OPTIONS
  3. পরীক্ষা শেষ হলে, Android রানটাইম পুনরায় সক্ষম করুন:
    adb shell start

পরীক্ষার নামের তালিকা /packages/modules/Bluetooth/system/test/README.md এ পাওয়া যাবে।

অ্যান্ড্রয়েড কমস টেস্ট স্যুট

অ্যান্ড্রয়েড কমস টেস্ট স্যুট (ACTS) ওয়াই-ফাই, ব্লুটুথ এবং সেলুলার পরিষেবাগুলির মতো সংযোগ স্ট্যাকের স্বয়ংক্রিয় পরীক্ষা করে। টেস্টিং টুলের জন্য adb এবং python প্রয়োজন এবং এটি tools/test/connectivity/acts এ পাওয়া যাবে।

ব্লুটুথ এবং ব্লুটুথ লো এনার্জির জন্য ACTS পরীক্ষাগুলি যথাক্রমে tools/test/connectivity/acts_tests/tests/google/bt/ এবং tools/test/connectivity/acts_tests/tests/google/ble/ -এ পাওয়া যায়।

প্রোফাইল টিউনিং স্যুট

ব্লুটুথ এসআইজি ব্লুটুথ প্রোফাইল টিউনিং স্যুট (পিটিএস), প্রোটোকল এবং প্রোফাইল ইন্টারঅপারেবিলিটির জন্য একটি টেস্টিং টুল প্রদান করে। আরও তথ্যের জন্য, ব্লুটুথ প্রোফাইল টিউনিং স্যুট সাইটটি দেখুন।

AOSP ব্লুটুথ PTS এর পরিপূরক করার জন্য অতিরিক্ত সরঞ্জাম সরবরাহ করে। এই টুলগুলি tools/test/connectivity/acts_tests/tests/google/bt/pts/ এ অবস্থিত।

CTS পরীক্ষা

কম্প্যাটিবিলিটি টেস্ট স্যুট (CTS) ব্লুটুথ স্ট্যাকের জন্য পরীক্ষা অন্তর্ভুক্ত করে। এগুলি cts/apps/CtsVerifier/src/com/android/cts/verifier/bluetooth এ অবস্থিত।

ডিবাগিং অপশন

AOSP লগ এবং বাগ রিপোর্ট সহ ডিভাইসের ব্লুটুথ স্ট্যাক ডিবাগ করার বিভিন্ন পদ্ধতি প্রদান করে। এই পদ্ধতিগুলি এমন সমস্যাগুলির জন্য কাজ নাও করতে পারে যেগুলি পুনরুত্পাদন করা যায় না বা অডিও সমস্যাগুলির জন্য, যা প্ল্যাটফর্ম এবং ডিভাইসের একাধিক অংশ দ্বারা প্রভাবিত হতে পারে৷

বাগ রিপোর্টের সাথে ডিবাগিং

dumpsys ব্যবহার করে ব্লুটুথ পরিষেবার স্থিতি পরীক্ষা করতে, নিম্নলিখিত কমান্ডটি ব্যবহার করুন:

adb shell dumpsys bluetooth_manager

ডিফল্টরূপে, সমস্ত লগ বার্তা হল ট্রেস লেভেল 2। লগিং লেভেল সম্পর্কে আরও জানতে এবং বিভিন্ন প্রোফাইলের লগিং লেভেল পরিবর্তন করতে, system/bt/conf/bt_stack.conf এ দেখুন।

বাগ রিপোর্ট থেকে স্নুপ লগ বের করতে, btsnooz স্ক্রিপ্ট ব্যবহার করুন।

  1. btsnooz.py পান।
  2. বাগ রিপোর্টের পাঠ্য সংস্করণ বের করুন।
  3. বাগ রিপোর্টের পাঠ্য সংস্করণে btsnooz.py চালান:
    btsnooz.py BUG_REPORT.txt > BTSNOOP.log

লগ দিয়ে ডিবাগিং

অ্যান্ড্রয়েড 4.4 এবং পরবর্তীতে, আপনি ম্যানুয়ালি BTSnoop লগগুলি সংগ্রহ করতে পারেন, যা RFC 1761-এর স্নুপ ফর্ম্যাটের মতো। এই লগগুলি হোস্ট কন্ট্রোলার ইন্টারফেস (HCI) প্যাকেটগুলি ক্যাপচার করে৷ বেশিরভাগ অ্যান্ড্রয়েড ডিভাইসের জন্য, লগগুলি data/misc/bluetooth/logs সংরক্ষণ করা হয়।

গোপনীয়তার কারণে, সর্বদা চালু, "ইন-মেমরি" BTSnoop শুধুমাত্র অ-ব্যক্তিগত তথ্য এবং ইভেন্টগুলি লগ করে। সমস্ত ডেটা লগ করতে, ব্যবহারকারীকে নিম্নলিখিতগুলি করে ব্লুটুথ HCI স্নুপ সক্ষম করতে হবে:

  1. ডিভাইসে বিকাশকারী বিকল্পগুলি সক্ষম করুন৷
  2. বিকাশকারী বিকল্প মেনুতে, ব্লুটুথ HCI স্নুপ লগ টগল সক্ষম করুন সক্রিয় করুন৷
  3. লগিং কার্যকর করার জন্য ব্লুটুথ পুনরায় চালু করুন।