पुष्टि करना और डीबग करना

ब्लूटूथ स्टैक की पुष्टि करने और उसे डीबग करने के लिए, एओएसपी और ब्लूटूथ स्पेशल इंटरेस्ट ग्रुप (एसआईजी) की जांच.

जांच और पुष्टि करें

ब्लूटूथ स्टैक की जांच करने के लिए, एओएसपी यूनिट टेस्ट का मिक्स उपलब्ध कराता है, ब्लूटूथ प्रोफ़ाइल ट्यूनिंग सुइट के सीटीएस टेस्ट और टूल.

एओएसपी में यूनिट टेस्ट

एओएसपी में, डिफ़ॉल्ट फ़ंक्शन के लिए फ़ंक्शनल और यूनिट टेस्ट शामिल हैं ब्लूटूथ स्टैक. ये जांच /packages/modules/Bluetooth/system/test/ में उपलब्ध कराई गई हैं. एओएसपी टेस्ट करने के लिए, ये काम करें:

  1. Android रनटाइम को रोकें:
    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 में देखी जा सकती है.

प्रोफ़ाइल ट्यूनिंग सुइट

ब्लूटूथ SIG, ब्लूटूथ प्रोफ़ाइल ट्यूनिंग सुइट (PTS) उपलब्ध कराता है, प्रोटोकॉल और प्रोफ़ाइल इंटरऑपरेबिलिटी के लिए टेस्टिंग टूल. ज़्यादा जानकारी के लिए, ब्लूटूथ प्रोफ़ाइल ट्यूनिंग सुइट की साइट.

सीटीएस टेस्ट

कंपैटबिलिटी टेस्ट सुइट (सीटीएस) इसमें ब्लूटूथ स्टैक के लिए टेस्ट शामिल हैं. ये 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

लॉग की मदद से डीबग करना

Android 4.4 और इसके बाद के वर्शन में, BTSnoop लॉग को मैन्युअल तरीके से इकट्ठा किया जा सकता है, जो आरएफ़सी 1761 में स्नूप फ़ॉर्मैट जैसा दिखता है. ये लॉग, होस्ट कंट्रोलर इंटरफ़ेस (एचसीआई) पैकेट. ज़्यादातर Android डिवाइसों के लॉग यहां सेव किए जाते हैं data/misc/bluetooth/logs.

निजता की वजह से, हमेशा चालू, "मेमोरी में" सिर्फ़ BTSnoop के लॉग गैर-निजी जानकारी और इवेंट. सारा डेटा लॉग करने के लिए, उपयोगकर्ता को ज़रूरी जानकारी ब्लूटूथ HCI स्नूप चालू करने के लिए नीचे दिया गया तरीका अपनाएं:

  1. डिवाइस पर डेवलपर के लिए सेटिंग और टूल चालू करें.
  2. डेवलपर के लिए सेटिंग और टूल मेन्यू में, ब्लूटूथ HCI स्नूप लॉग चालू करें टॉगल.
  3. लॉग इन करने के लिए ब्लूटूथ को फिर से चालू करें.