Android Compatibility Test Suite Verifier (CTS Verifier), Compatibility Test Suite (CTS) का पूरक है. CTS में, ऐसे एपीआई और फ़ंक्शन की जांच की जाती है जिन्हें अपने-आप किया जा सकता है. वहीं, CTS Verifier में ऐसे एपीआई और फ़ंक्शन की जांच की जाती है जिन्हें बिना मैन्युअल इनपुट या पोज़िशनिंग के, किसी स्टेशनरी डिवाइस पर टेस्ट नहीं किया जा सकता. जैसे, ऑडियो क्वालिटी, टचस्क्रीन, ऐक्सिलरोमीटर, और कैमरा.
ज़रूरी शर्तें
CTS Verifier चलाने से पहले, पक्का करें कि आपके पास ये उपकरण हों:
- Android डिवाइस, जिसने सीटीएस पास करके Android एपीआई के साथ काम करने की पुष्टि की हो. यह जांच किया जा रहा डिवाइस (डीयूटी) है.
- Linux कंप्यूटर, जिसमें यूएसबी 2.0 के साथ काम करने वाला पोर्ट हो. DUT से जुड़े सभी कनेक्शन, इस पोर्ट से होते हैं.
- Android पर काम करने वाला दूसरा डिवाइस. इसमें ब्लूटूथ, Wi-Fi Direct, Wi-Fi Aware, UWB (अगर DUT में UWB की सुविधा काम करती है), और NFC होस्ट कार्ड इम्यूलेशन (HCE) की सुविधा होनी चाहिए.
- ऐक्सेस पॉइंट के नाम और पासवर्ड के साथ कॉन्फ़िगर किया गया वाई-फ़ाई राऊटर. राउटर में यह सुविधा होनी चाहिए कि उसे बंद किए बिना, इंटरनेट से डिसकनेक्ट किया जा सके.
यह भी पक्का करें कि आपने यूडब्ल्यूबी, वाई-फ़ाई एनएएन, और ब्लूटूथ आरएसएसआई के लिए, दूरी (निकटता) मापने वाले टेस्ट के लिए ज़रूरी ट्राइपॉड, डिवाइस होल्डर, और पहले से मापी गई दूरियां तैयार कर ली हों. ज़्यादा जानकारी के लिए, उपयोगकर्ता की मौजूदगी का पता लगाने की सुविधा को कैलिब्रेट करना लेख पढ़ें.
एनएफ़सी की जांच के लिए यूआईसीसी की ज़रूरी शर्तें
CTS Verifier में, एनएफ़सी के लिए ये टेस्ट केस उपलब्ध हैं:
- फ़ील्ड-ऑफ़ (0x54 से लेन-देन के डेटा का इस्तेमाल करता है)
- अनचेक किया गया (0x52 से लेन-देन के डेटा का इस्तेमाल करता है)
- एचसीआई कमांड (0025000000) (0x02 से लेन-देन के डेटा का इस्तेमाल करता है)
लेन-देन वाले इवेंट की जांच करने के लिए, दो डिवाइसों की ज़रूरत होती है. इनमें से एक डिवाइस में SecureElement UICC होना चाहिए. साथ ही, इसमें ऐक्सेस करने से जुड़े ये नियम लागू होने चाहिए:
- CtsVerifier APK का हैश: 61:ED:37:7E:85:D3:86:A8:DF:EE:6B:86:4B:D8:5B:0B:FA:A5:AF:81
- एनएफ़सी इवेंट ऐक्सेस के लिए, अधिकृत ऐप्लिकेशन आइडेंटिफ़ायर (एआईडी): 0xA000000476416E64726F696443545341
एम्युलेटर पर, हमें उम्मीद है कि लेन-देन वाला इवेंट, उससे जुड़ी गतिविधि को फ़ोरग्राउंड में ले जाएगा.
सेटअप
Android 17 में डिफ़ॉल्ट ब्राउज़र की भूमिका देने के लिए, CTS-V सेटअप के स्टेप को अलग से पूरा करना होगा.
टेस्ट के लिए डिवाइस के सिस्टम नेविगेशन मोड को तीन बटन वाले मोड में बदलने के लिए, यह तरीका अपनाएं:
- सेटिंग खोलें.
- सिस्टम > इंटरैक्शन > नेविगेशन मोड पर जाएं.
- बटन पर आधारित कोई भी नेविगेशन मोड चुनें. अगर तीन बटन वाला मोड उपलब्ध है, तो उसे चुनें.
CTS Verifier के टेस्टिंग एनवायरमेंट को सेट अप करने के लिए:
Linux कंप्यूटर पर:
- CTS Verifier को इंस्टॉल करने से पहले, SDK से बाहर के इंटरफ़ेस को ऐक्सेस करने की अनुमति देने के लिए, यह निर्देश चलाएं:
adb shell settings put global hidden_api_policy 1Android Studio इंस्टॉल करें.
जांच के लिए, Android के वर्शन के हिसाब से CTS Verifier APK डाउनलोड करें.
DUT को Linux कंप्यूटर से कनेक्ट करें.
Linux कंप्यूटर पर मौजूद टर्मिनल से, DUT पर
CtsVerifier.apkइंस्टॉल करें:adb install -r -g CtsVerifier.apkAndroid 10 और इसके बाद के वर्शन के लिए, ऐप्लिकेशन को रिपोर्ट बनाने की अनुमति देने के लिए, यह कमांड चलाएं:
adb shell appops set com.android.cts.verifier android:read_device_identifiers allowAndroid 11 और इसके बाद के वर्शन के लिए, यहां दिया गया कमांड चलाएं. इससे डिवाइस की बाहरी टॉप-लेवल डायरेक्ट्री में, खुद तय की गई डायरेक्ट्री में रिपोर्ट सेव करने की अनुमति मिलती है:
adb shell appops set com.android.cts.verifier MANAGE_EXTERNAL_STORAGE 0Android 13 और इसके बाद के वर्शन के लिए, CTS Verifier को टेस्ट एपीआई का ऐक्सेस देने के लिए, यह कमांड चलाएँ:
adb shell am compat enable ALLOW_TEST_API_ACCESS com.android.cts.verifierAndroid 14 और इसके बाद के वर्शन के लिए, ऐप्लिकेशन को स्क्रीन चालू करने की अनुमति देने के लिए, यह कमांड चलाएँ:
adb shell appops set com.android.cts.verifier TURN_SCREEN_ON 0Android 17 और इसके बाद के वर्शन के लिए, CTS Verifier को डिफ़ॉल्ट ब्राउज़र की भूमिका देने के लिए, यह कमांड चलाएं:
adb shell 'cmd role add-role-holder --user $(am get-current-user) android.app.role.BROWSER com.android.cts.verifier'पुष्टि करें कि DUT में सिस्टम की तारीख और समय सही तरीके से सेट किया गया है.
सीटीएस वेरिफ़ायर चलाएं
DUT पर CTS Verifier आइकॉन पर टैप करके, CTS Verifier ऐप्लिकेशन लॉन्च करें.
पहली इमेज. CTS Verifier का आइकॉन.
ऐप्लिकेशन में, मैन्युअल तरीके से पुष्टि करने के लिए उपलब्ध कई टेस्ट सेट दिखाए जाते हैं.
दूसरी इमेज. सीटीएस की पुष्टि करने वाले टूल के टेस्ट का मेन्यू.
हर टेस्ट में, स्क्रीन पर सबसे नीचे कुछ सामान्य एलिमेंट होते हैं.
तीसरी इमेज. टेस्ट स्क्रीन, जिसमें सामान्य टेस्ट एलिमेंट हाइलाइट किए गए हैं.
- पास (✓). अगर DUT, जानकारी में दिए गए निर्देशों के मुताबिक टेस्ट की ज़रूरी शर्तें पूरी करता है, तो इस पर टैप करें.
- जानकारी (?). टेस्ट के निर्देश दिखाने के लिए टैप करें. टेस्ट को पहली बार खोलने पर भी यह अपने-आप दिखता है.
- Fail (!). अगर DUT, जानकारी में दिए गए निर्देशों के मुताबिक टेस्ट की ज़रूरी शर्तों को पूरा नहीं करता है, तो इस पर टैप करें.
कुछ टेस्ट, जैसे कि यूएसबी ऐक्सेसरी मोड के लिए, टेस्ट सेटअप और निर्देशों की ज़रूरत होती है. इनके बारे में यहां बताया गया है.
Android 8.0 और उसके बाद के वर्शन के लिए, यूएसबी ऐक्सेसरी मोड की जांच करना
चौथी इमेज. Android 8.0 और इससे ऊपर के वर्शन के लिए, यूएसबी ऐक्सेसरी की जांच करने की प्रक्रिया.
पांचवीं इमेज. Android 8.0 और उसके बाद के वर्शन के लिए, यूएसबी ऐक्सेसरी मोड की टेस्टिंग की जा रही है.
7.x और इससे पहले के वर्शन के लिए, यूएसबी ऐक्सेसरी मोड की जांच करना
यूएसबी ऐक्सेसरी की जांच करने के लिए, Linux कंप्यूटर पर यूएसबी डेस्कटॉप मशीन (होस्ट) प्रोग्राम चलाना ज़रूरी है.
- DUT को Linux कंप्यूटर से कनेक्ट करें.
कंप्यूटर पर, CTS Verifier पैकेज से
cts-usb-accessoryप्रोग्राम चलाएं:./cts-usb-accessoryडीयूटी पर डायलॉग बॉक्स दिखने का इंतज़ार करें. इसके बाद, ठीक है पर टैप करें.
छठी इमेज. यूएसबी ऐक्सेसरी की जांच
DUT पर CTS Verifier ऐप्लिकेशन में, USB Accessory Test पर जाएं.
कंप्यूटर पर, कंसोल से मिले आउटपुट की समीक्षा करें. आउटपुट का उदाहरण:
CTS USB Accessory Tester Found possible Android device (413c:2106) - attempting to switch to accessory mode... Failed to read protocol versionfigure3 Found Android device in accessory mode (18d1:2d01)... [RECV] Message from Android device #0 [SENT] Message from Android accessory #0 [RECV] Message from Android device #1 [SENT] Message from Android accessory #1 [RECV] Message from Android device #2 [SENT] Message from Android accessory #2 [RECV] Message from Android device #3 [SENT] Message from Android accessory #3 [RECV] Message from Android device #4 [SENT] Message from Android accessory #4 [RECV] Message from Android device #5 [SENT] Message from Android accessory #5 [RECV] Message from Android device #6 [SENT] Message from Android accessory #6 [RECV] Message from Android device #7 [SENT] Message from Android accessory #7 [RECV] Message from Android device #8 [SENT] Message from Android accessory #8 [RECV] Message from Android device #9 [SENT] Message from Android accessory #9 [RECV] Message from Android device #10 [SENT] Message from Android accessory #10
दूसरे मोड के लिए CTS Verifier चलाएं
सीटीएस 10 आर6 और सीटीएस 11 आर2 रिलीज़ से, सीटीएस वेरिफ़ायर उन डिवाइसों के लिए ज़रूरी टेस्ट के साथ काम करता है जिनमें वैकल्पिक मोड होते हैं या जिनमें एक से ज़्यादा स्क्रीन मोड होते हैं.
सीटीएस वेरिफ़ायर में मुख्य सूची के सबसे ऊपर, एक बटन दिखता है. इससे उपयोगकर्ता, अनफ़ोल्ड और फ़ोल्ड किए गए डिसप्ले मोड के बीच टॉगल कर सकते हैं. CTS Verifier, चुने गए डिसप्ले मोड के लिए ज़रूरी टेस्ट दिखाएगा. CTS Verifier में वैकल्पिक मोड चलाने के लिए, बटन को सही डिसप्ले मोड पर स्विच करना होगा. इसके बाद, दिखाए गए टेस्ट की सूची को चलाना होगा.
सातवीं इमेज. CTS Verifier का टॉगल स्विच.
फ़ोल्ड किए गए टेस्ट के नतीजे, अनफ़ोल्ड किए गए टेस्ट के साथ एक ही रिपोर्ट में रिकॉर्ड किए जाएंगे. फ़ोल्ड किए गए मोड में, हर टेस्ट के नाम में एक सफ़िक्स जोड़ा जाता है. इससे यह पता चलता है कि टेस्ट का हर नतीजा किस टेस्ट सेट से मिला है.
<Test result="fail" name="com.android.cts.verifier.deskclock.DeskClockTestsActivity[folded]">
<RunHistory subtest="CREATE_ALARM[folded]">
<Run start="1594176663973" end="1594176665841" isAutomated="false" />
</RunHistory>
</Test>
परिणाम निर्यात करें
सभी जांच पूरी होने के बाद, नतीजों को रिपोर्ट के तौर पर सेव किया जा सकता है. साथ ही, उन्हें कंप्यूटर पर डाउनलोड किया जा सकता है. रिपोर्ट के नाम, DUT के सिस्टम टाइम के आधार पर अपने-आप टाइमस्टैंप हो जाते हैं.
जांच के नतीजे सेव करने के लिए, जांच की कैटगरी की सूची में सबसे ऊपर मौजूद, सेव करें (डिस्क) आइकॉन पर टैप करें.
सेव की गई रिपोर्ट का पाथ दिखाने वाले डायलॉग बॉक्स (उदाहरण के लिए,
/sdcard/verifierReports/ctsVerifierReport-date-time.zip) के दिखने का इंतज़ार करें. इसके बाद, पाथ रिकॉर्ड करें.DUT को Linux कंप्यूटर से कनेक्ट करें.
Linux कंप्यूटर पर Android SDK इंस्टॉल करने के बाद, कनेक्ट किए गए डिवाइस से रिपोर्ट डाउनलोड करें. इसके लिए,
adb shell content readयाadb pull CTSVerifierReportPathका इस्तेमाल करें.Android 7.x और इसके बाद के वर्शन के लिए, यहां दिया गया कमांड इस्तेमाल करके सभी रिपोर्ट डाउनलोड करें:
adb pull /sdcard/verifierReportsAndroid 6.0 और इससे पुराने वर्शन के लिए, यहां दिए गए कमांड का इस्तेमाल करके सभी रिपोर्ट डाउनलोड करें:
adb pull /mnt/sdcard/ctsVerifierReports/Android 10 और इसके बाद के वर्शन पर काम करने वाले Automotive डिवाइस और दूसरे उपयोगकर्ता के तौर पर काम करने वाले डिवाइसों के लिए, इस निर्देश का इस्तेमाल करके नई रिपोर्ट डाउनलोड करें:
adb shell content read --user <var>CURRENT_USER</var> --uri content://com.android.cts.verifier.testresultsprovider/reports/latest > report.zipकनेक्ट किए गए डिवाइस में मौजूद सभी रिपोर्ट देखने के लिए:
adb shell content query --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports ``` To download a report from the list, you can specify the Row ID or filename. For example: ```shell adb shell content read --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports/0 > report.zip ``` ```shell adb shell content read --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports ctsVerifierReport-date-time.zip > report.zip ```
पास या फ़ेल होने के नतीजों को मिटाने के लिए, CTS Verifier ऐप्लिकेशन में नतीजे चुनें. इसके बाद, मेन्यू > मिटाएं चुनें.