Android Compatibility Test Suite Verifier (सीटीएस की पुष्टि करने वाला टूल), Compatibility Test Suite (सीटीएस) का पूरक है. सीटीएस, एपीआई और उन फ़ंक्शन की जांच करता है जिन्हें ऑटोमेट किया जा सकता है. वहीं, सीटीएस की पुष्टि करने वाला टूल, एपीआई और उन फ़ंक्शन की जांच करता है जिन्हें स्टेशनरी डिवाइस पर, मैन्युअल इनपुट या पोज़िशनिंग के बिना टेस्ट नहीं किया जा सकता. जैसे, ऑडियो क्वालिटी, टचस्क्रीन, ऐक्सलरोमीटर, और कैमरा.
ज़रूरी शर्तें
सीटीएस की पुष्टि करने वाला टूल चलाने से पहले, पक्का करें कि आपके पास ये चीज़ें हों:
- Android पर चलने वाला ऐसा डिवाइस जिसने सीटीएस पास करके, Android एपीआई के साथ काम करने की पुष्टि की हो. यह वह डिवाइस है जिसकी जांच की जा रही है (DUT).
- यूएसबी 2.0 के साथ काम करने वाले पोर्ट वाला Linux कंप्यूटर. DUT से सभी कनेक्शन, इसी पोर्ट के ज़रिए होते हैं.
- Android पर चलने वाला दूसरा डिवाइस, जिसमें ब्लूटूथ, वाई-फ़ाई डायरेक्ट, वाई-फ़ाई अवेयर, यूडब्लूबी (अगर DUT, यूडब्लूबी के साथ काम करता है), और NFC होस्ट कार्ड इम्यूलेशन (HCE) की सुविधा हो. साथ ही, यह भी पक्का करें कि ये सुविधाएं, डिवाइस के साथ काम करती हों.
- वाई-फ़ाई राऊटर, जिसे ऐक्सेस पॉइंट के नाम और पासवर्ड के साथ कॉन्फ़िगर किया गया हो. राऊटर में, पावर ऑफ़ किए बिना इंटरनेट से डिसकनेक्ट होने की सुविधा होनी चाहिए.
यह भी पक्का करें कि आपके पास ट्राइपॉड, डिवाइस होल्डर, और पहले से मेज़र की गई दूरियां हों. इनकी ज़रूरत, यूडब्लूबी, वाई-फ़ाई एनएएन, और ब्लूटूथ आरएसएसआई के लिए, दूरी (निकटता) मापने वाले टेस्ट के लिए होती है. ज़्यादा जानकारी के लिए, प्रेज़ेंस कैलिब्रेशन देखें.
एनएफ़सी टेस्ट के लिए यूआईसीसी की ज़रूरी शर्तें
सीटीएस की पुष्टि करने वाले टूल में, एनएफ़सी के ये टेस्ट केस शामिल हैं:
- फ़ील्ड-ऑफ़ (लेन-देन के 0x54 डेटा का इस्तेमाल करता है)
- डी-सेलेक्ट (लेन-देन के 0x52 डेटा का इस्तेमाल करता है)
- एचसीआई कमांड (0025000000) (लेन-देन के 0x02 डेटा का इस्तेमाल करता है)
लेन-देन के इवेंट टेस्ट के लिए, दो डिवाइसों की ज़रूरत होती है. इनमें से एक डिवाइस में, SecureElement यूआईसीसी होना चाहिए. साथ ही, उसमें ये ऐक्सेस नियम लागू होने चाहिए:
- CtsVerifier APK हैश: 61:ED:37:7E:85:D3:86:A8:DF:EE:6B:86:4B:D8:5B:0B:FA:A5:AF:81
- एनएफ़सी इवेंट ऐक्सेस के लिए, ऑथराइज़्ड ऐप्लिकेशन आइडेंटिफ़ायर (एआईडी): 0xA000000476416E64726F696443545341
एम्युलेटर की ओर से, हमारा मानना है कि लेन-देन का इवेंट, उससे जुड़ी गतिविधि को फ़ोरग्राउंड में पुश करेगा.
सेटअप
टेस्ट के लिए डिवाइस के सिस्टम नेविगेशन मोड को तीन बटन वाले मोड में बदलें. इसके लिए:
- Settings खोलें.
- सिस्टम > हाथ के जेस्चर (हाव-भाव) > सिस्टम नेविगेशन पर जाएं.
- बटन पर आधारित कोई भी नेविगेशन मोड चुनें. अगर उपलब्ध हो, तो तीन बटन वाला मोड चुनें.
सीटीएस की पुष्टि करने वाले टूल के लिए टेस्टिंग एनवायरमेंट सेट अप करने के लिए:
Linux कंप्यूटर पर:
- सीटीएस की पुष्टि करने वाले टूल को इंस्टॉल करने से पहले, यह कमांड चलाएं, ताकि गैर-एसडीके इंटरफ़ेस को ऐक्सेस किया जा सके.
adb shell settings put global hidden_api_policy 1Android Studio इंस्टॉल करें.
Android के जिस वर्शन की जांच करनी है उसके लिए, सीटीएस की पुष्टि करने वाले टूल का 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 और इसके बाद के वर्शन के लिए, सीटीएस की पुष्टि करने वाले टूल को टेस्ट एपीआई ऐक्सेस करने की अनुमति देने के लिए यह कमांड चलाएं:
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 0पक्का करें कि DUT पर सिस्टम की तारीख और समय सही तरीके से सेट हो.
सीटीएस की पुष्टि करने वाला टूल चलाना
DUT पर, सीटीएस की पुष्टि करने वाले टूल के आइकॉन पर टैप करके, सीटीएस की पुष्टि करने वाला टूल ऐप्लिकेशन लॉन्च करें.
पहली इमेज. सीटीएस की पुष्टि करने वाले टूल का आइकॉन.
ऐप्लिकेशन में, मैन्युअल तरीके से पुष्टि करने के लिए उपलब्ध कई टेस्ट सेट दिखते हैं.
दूसरी इमेज. सीटीएस की पुष्टि करने वाले टूल के टेस्ट का मेन्यू.
हर टेस्ट में, स्क्रीन पर सबसे नीचे कुछ सामान्य एलिमेंट होते हैं.
तीसरी इमेज. टेस्ट स्क्रीन, जिसमें सामान्य टेस्ट एलिमेंट हाइलाइट किए गए हैं.
- पास (✓). अगर DUT, जानकारी में दिए गए निर्देशों के मुताबिक टेस्ट की ज़रूरी शर्तें पूरी करता है, तो इस पर टैप करें.
- जानकारी (?). टेस्ट के निर्देश दिखाने के लिए, इस पर टैप करें. किसी टेस्ट को पहली बार खोलने पर, यह अपने-आप भी दिखता है.
- फ़ेल (!). अगर DUT, जानकारी में दिए गए निर्देशों के मुताबिक टेस्ट की ज़रूरी शर्तें पूरी नहीं करता है, तो इस पर टैप करें.
कुछ टेस्ट के लिए, जैसे कि यूएसबी ऐक्सेसरी मोड और कैमरे के कैलिब्रेशन टेस्ट के लिए, टेस्ट का सेटअप और निर्देश अलग से देने होते हैं. इनके बारे में, यहां दिए गए सेक्शन में बताया गया है.
8.0 और इसके बाद के वर्शन के लिए, यूएसबी ऐक्सेसरी मोड की जांच करना
चौथी इमेज. 8.0 और इसके बाद के वर्शन के लिए, यूएसबी ऐक्सेसरी टेस्ट की प्रोसेस.
पांचवी इमेज. 8.0 और इसके बाद के वर्शन के लिए, यूएसबी ऐक्सेसरी मोड की जांच करना.
7.x और इससे पहले के वर्शन के लिए, यूएसबी ऐक्सेसरी मोड की जांच करना
यूएसबी ऐक्सेसरी टेस्ट के लिए, Linux कंप्यूटर की ज़रूरत होती है, ताकि यूएसबी डेस्कटॉप मशीन (होस्ट) प्रोग्राम चलाया जा सके.
- DUT को Linux कंप्यूटर से कनेक्ट करें.
कंप्यूटर पर, सीटीएस की पुष्टि करने वाले टूल के पैकेज से
cts-usb-accessoryप्रोग्राम चलाएं:./cts-usb-accessoryDUT पर डायलॉग बॉक्स दिखने का इंतज़ार करें. इसके बाद, ठीक है पर टैप करें.
छठी इमेज. यूएसबी ऐक्सेसरी टेस्ट
DUT पर, सीटीएस की पुष्टि करने वाले टूल के ऐप्लिकेशन में, यूएसबी ऐक्सेसरी टेस्ट पर जाएं.
कंप्यूटर पर, कंसोल से मिले आउटपुट की समीक्षा करें. आउटपुट का उदाहरण:
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
कैमरे के फ़ील्ड ऑफ़ व्यू को कैलिब्रेट करना
फ़ील्ड ऑफ़ व्यू कैलिब्रेशन की प्रोसेस का इस्तेमाल करके, डिवाइस के फ़ील्ड ऑफ़ व्यू का पता आसानी से लगाया जा सकता है. हालांकि, इसमें सटीक जानकारी नहीं मिलती.
टेस्ट एनवायरमेंट सेट अप करें:
- कैलिब्रेशन पैटर्न पीडीएफ़ टारगेट फ़ाइल को 11" x 17" या A3 साइज़ के पेपर पर प्रिंट करें.
- प्रिंट किए गए पैटर्न को किसी ठोस चीज़ पर चिपकाएं.
कैमरा डिवाइस और प्रिंट किए गए टारगेट को, यहां दिए गए डायग्राम के मुताबिक रखें:
सातवीं इमेज. कैमरे का प्रिंट किया गया टारगेट.
टारगेट की चौड़ाई सेट करें:
- प्रिंटिंग में होने वाली गड़बड़ियों (~38 cm) को ध्यान में रखते हुए, टारगेट पैटर्न पर मौजूद ठोस लाइनों के बीच की दूरी (सेंटीमीटर में) मापें.
- कैलिब्रेशन ऐप्लिकेशन शुरू करें.
- सेटअप बटन दबाएं और मार्कर की दूरी चुनें.
- टारगेट पैटर्न (~100 cm) की दूरी मापें और डालें.
- कैलिब्रेशन के प्रीव्यू पर वापस जाने के लिए, 'वापस जाएं' बटन दबाएं.
पक्का करें कि डिवाइस और टारगेट को इमेज में दिखाए गए तरीके से रखा गया हो. साथ ही, सेटअप डायलॉग में सही दूरियां डाली गई हों. प्रीव्यू में, इमेज पर एक वर्टिकल लाइन दिखती है. यह लाइन, टारगेट पैटर्न की सेंटरलाइन के साथ अलाइन होनी चाहिए. पारदर्शी ग्रिड का इस्तेमाल, अन्य वर्टिकल लाइनों के साथ किया जा सकता है. इससे यह पुष्टि की जा सकती है कि ऑप्टिकल ऐक्सिस, टारगेट के ऑर्थोगोनल है.
कैलिब्रेशन टेस्ट चलाएं:
- कोई इमेज रिज़ॉल्यूशन चुनें (सबसे नीचे बाईं ओर मौजूद सिलेक्टर का इस्तेमाल करके). इसके बाद, फ़ोटो लेने के लिए स्क्रीन पर टैप करें. टेस्ट, कैलिब्रेशन मोड में चला जाता है और इमेज पर दो वर्टिकल लाइनें दिखती हैं.
- सटीकता का पता लगाएं:
- अगर लाइनें, टारगेट पैटर्न पर मौजूद वर्टिकल लाइनों के साथ कुछ सेंटीमीटर के अंदर अलाइन होती हैं, तो चुने गए रिज़ॉल्यूशन के लिए, फ़ील्ड ऑफ़ व्यू की रिपोर्ट सटीक होती है.
- अगर लाइनें अलाइन नहीं होती हैं, तो फ़ील्ड ऑफ़ व्यू की रिपोर्ट सटीक नहीं होती है. इसे ठीक करने के लिए, स्क्रीन पर सबसे नीचे मौजूद स्लाइडर को तब तक अडजस्ट करें, जब तक कि ओवरले, टारगेट पैटर्न के साथ ज़्यादा से ज़्यादा अलाइन न हो जाए. जब ओवरले और टारगेट पैटर्न की इमेज अलाइन हो जाती हैं, तो दिखने वाला फ़ील्ड ऑफ़ व्यू, सही वैल्यू के आस-पास होता है. फ़ीड ऑफ़ व्यू की रिपोर्ट, कैलिब्रेशन वैल्यू के तीन डिग्री के अंदर होनी चाहिए.
- वापस जाएं बटन दबाएं और DUT के साथ काम करने वाले सभी इमेज रिज़ॉल्यूशन के लिए, कैलिब्रेशन टेस्ट दोहराएं.
दूसरे मोड के लिए, सीटीएस की पुष्टि करने वाला टूल चलाना
सीटीएस 10 R6 और सीटीएस 11 R2 रिलीज़ के बाद से, सीटीएस की पुष्टि करने वाला टूल, दूसरे मोड वाले डिवाइसों या एक से ज़्यादा स्क्रीन मोड वाले डिवाइसों के लिए ज़रूरी टेस्ट के साथ काम करता है.
सीटीएस की पुष्टि करने वाले टूल में, मुख्य सूची के व्यू में सबसे ऊपर एक बटन दिखता है. इसकी मदद से, उपयोगकर्ता डिसप्ले मोड को अनफ़ोल्ड और फ़ोल्ड मोड के बीच टॉगल कर सकते हैं. सीटीएस की पुष्टि करने वाला टूल, चुने गए डिसप्ले मोड के लिए ज़रूरी टेस्ट दिखाएगा. सीटीएस की पुष्टि करने वाले टूल में, दूसरे मोड चलाने के लिए, बटन को सही डिसप्ले मोड पर स्विच करें और दिखने वाली टेस्ट की सूची चलाएं.
आठवीं इमेज. सीटीएस की पुष्टि करने वाले टूल का टॉगल स्विच.
फ़ोल्ड मोड वाले टेस्ट के नतीजे, अनफ़ोल्ड मोड वाले टेस्ट के साथ ही रिकॉर्ड किए जाएंगे. हर टेस्ट के नतीजे की पहचान करने के लिए, फ़ोल्ड मोड में हर टेस्ट के नाम के आखिर में एक सफ़िक्स जोड़ा जाता है.
<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 ```
पास या फ़ेल के नतीजे मिटाने के लिए, सीटीएस की पुष्टि करने वाले टूल ऐप्लिकेशन में नतीजे चुनें. इसके बाद, मेन्यू > मिटाएं चुनें.