CTS चलाने के लिए, सबसे पहले अपना फ़िज़िकल एनवायरमेंट, डेस्कटॉप मशीन, और उस Android डिवाइस को तैयार करें जिसका इस्तेमाल टेस्टिंग के लिए किया जा रहा है.
आस-पास का वातावरण
ब्लूटूथ स्मार्ट बीकन
अगर जांचा जा रहा डिवाइस (डीयूटी) ब्लूटूथ LE के साथ काम करता है, तो ब्लूटूथ LE स्कैन टेस्टिंग के लिए, डीयूटी के 5 मीटर के दायरे में कम से कम तीन ब्लूटूथ LE बीकन रखें. इन बीकन को कॉन्फ़िगर करने या किसी खास जानकारी को भेजने की ज़रूरत नहीं होती. ये किसी भी तरह के हो सकते हैं. जैसे, iBeacon, Eddystone या BLE बीकन की नकल करने वाले डिवाइस.
अल्ट्रा-वाइडबैंड
अगर डीयूटी में अल्ट्रा-वाइडबैंड (यूडब्ल्यूबी) की सुविधा काम करती है, तो यूडब्ल्यूबी की सुविधा वाले किसी दूसरे डिवाइस को इतना पास रखें कि एंटेना और रेडियो डेड ज़ोन न हो. दूरी की सटीक जानकारी देने वाले टेस्ट के लिए, प्लेसमेंट और ओरिएंटेशन से जुड़ी खास ज़रूरतें होती हैं. सेटअप की जानकारी के लिए, UWB की ज़रूरी शर्तें देखें. UWB टेस्ट को मैन्युअल तरीके से चलाया जाना चाहिए. इसके लिए, कमांड लाइन पर यह बताना होगा कि कौनसे दो डिवाइस एक मीटर की दूरी पर हैं. इस टेस्ट के लिए, ज़रूरी शर्डिंग के बारे में जानकारी पाने के लिए, लोकल शर्डिंग देखें.
कैमरे
कैमरा सीटीएस चलाते समय, टेस्ट पैटर्न चार्ट (जैसे कि चेकरबोर्ड पैटर्न) के साथ सामान्य लाइटिंग की स्थिति का इस्तेमाल करें. टेस्ट पैटर्न चार्ट को डीयूटी की कम से कम फ़ोकस दूरी के हिसाब से रखें, ताकि यह लेंस के बहुत करीब न हो.
कैमरे के सेंसर को ज़रूरत के मुताबिक रोशनी वाले सीन पर फ़ोकस करें, ताकि जांच में शामिल सेंसर, CONTROL_AE_TARGET_FPS_RANGE
में बताए गए ज़्यादा से ज़्यादा कॉन्फ़िगर किए गए फ़्रेम प्रति सेकंड (एफ़पीएस) तक पहुंच सकें और उस पर बने रहें.
यह उन सभी कैमरा सेंसर पर लागू होता है जिनकी शिकायत getCameraIdList
ने की है. ऐसा इसलिए, क्योंकि यह जांच, सूची में शामिल डिवाइसों पर की जाती है और परफ़ॉर्मेंस को अलग-अलग मेज़र किया जाता है.
अगर डीयूटी में यूएसबी वेबकैम जैसे बाहरी कैमरे काम करते हैं, तो सीटीएस चलाते समय कोई बाहरी कैमरा प्लग-इन करें. ऐसा न करने पर, सीटीएस की जांच पूरी नहीं हो पाएगी.
जीपीएस/जीएनएसएस
अगर डीयूटी में ग्लोबल पोज़िशनिंग सिस्टम/ग्लोबल नेविगेशन सैटलाइट सिस्टम (जीपीएस/जीएनएसएस) की सुविधा काम करती है, तो डीयूटी को जीपीएस/जीएनएसएस सिग्नल दें. यह सिग्नल, सिग्नल रिसेप्शन और जीपीएस की जगह की जानकारी का हिसाब लगाने के लिए, सही सिग्नल लेवल पर होना चाहिए. जीपीएस से जुड़ा हिस्सा, ICD-GPS-200C के मुताबिक होना चाहिए. इसके अलावा, जीपीएस/जीएनएसएस सिग्नल किसी भी तरह का हो सकता है. इसमें सैटलाइट सिम्युलेटर या बाहर के सिग्नल का जीपीएस/जीएनएसएस रिपीटर शामिल है. इसके अलावा, डीयूटी को खिड़की के इतना करीब रखा जा सकता है कि वह सीधे तौर पर ज़रूरत के मुताबिक जीपीएस/जीएनएसएस सिग्नल पा सके.
वाई-फ़ाई और आईपीवी6
सीटीएस टेस्ट के लिए, ऐसे वाई-फ़ाई नेटवर्क की ज़रूरत होती है जो IPv4 और IPv6 के साथ काम करता हो. साथ ही, उसमें IPv4 और IPv6 के लिए काम करने वाले डीएनएस के साथ इंटरनेट कनेक्शन हो, आईपी मल्टीकास्ट के साथ काम करता हो, और डीयूटी को अलग क्लाइंट के तौर पर इस्तेमाल किया जा सकता हो. अलग-थलग क्लाइंट एक ऐसा कॉन्फ़िगरेशन है जिसमें डीयूटी, उस सबनेटवर्क पर ब्रॉडकास्ट/मल्टीनेटवर्क मैसेज नहीं देख सकता. यह वाई-फ़ाई ऐक्सेस पॉइंट (एपी) कॉन्फ़िगरेशन के साथ होता है या किसी ऐसे सबनेटवर्क पर डीयूटी चलाने पर होता है जिसमें कोई दूसरा डिवाइस कनेक्ट न हो.
अगर आपके पास IPv6 पर आधारित कुछ टेस्ट पास करने के लिए, नेटिव IPv6 नेटवर्क, IPv6 कैरियर नेटवर्क या वीपीएन का ऐक्सेस नहीं है, तो वाई-फ़ाई ऐक्सेस पॉइंट और IPv6 टनल का इस्तेमाल किया जा सकता है.
सीटीएस पास करने के लिए, डीयूटी के वाई-फ़ाई इंटरफ़ेस पर UP
, BROADCAST
, और MULTICAST
फ़्लैग सेट होने चाहिए. वाई-फ़ाई इंटरफ़ेस को IPv4 और IPv6 पते असाइन करने की ज़रूरत होती है.
adb shell ifconfig
की मदद से, वाई-फ़ाई इंटरफ़ेस प्रॉपर्टी देखें.
Wi-Fi STA/STA Concurrency की सुविधा वाले डिवाइसों के लिए, एक से ज़्यादा वाई-फ़ाई नेटवर्क (कम से कम दो) ज़रूरी हैं. सीटीएस की शर्तें पूरी करने के लिए, वाई-फ़ाई नेटवर्क को अलग-अलग SSID वाले अलग-अलग बैंड पर या एक ही SSID वाले अलग-अलग बीएसएसआईडी पर चलाना होगा.
वाई-फ़ाई आरटीटी
Android में वाई-फ़ाई राउंड ट्रिप टाइम (आरटीटी) की सुविधा के लिए, Wi-Fi RTT API शामिल है. इससे डिवाइसों को ऐक्सेस पॉइंट से अपनी दूरी का पता लगाने में मदद मिलती है. यह दूरी 1 से 2 मीटर तक सटीक होती है. इससे, इनडोर जगह की जानकारी को ज़्यादा सटीक बनाने में मदद मिलती है. वाई-फ़ाई आरटीटी की सुविधा के साथ काम करने वाले दो डिवाइसों के सुझाव दिए गए हैं. पहला, Google Wifi और दूसरा, Compulab का fitlet2 ऐक्सेस पॉइंट. यह डिवाइस 5 गीगाहर्ट्ज़ पर 40 एमएचज़ बैंडविड्थ पर सेट होना चाहिए.
ऐक्सेस पॉइंट चालू होने चाहिए, लेकिन उन्हें नेटवर्क से कनेक्ट करने की ज़रूरत नहीं है. ऐक्सेस पॉइंट को टेस्टिंग डिवाइस के बगल में रखने की ज़रूरत नहीं है. हालांकि, हमारा सुझाव है कि वे डीयूटी से तीन फ़ीट के दायरे में हों. आम तौर पर, एक ऐक्सेस पॉइंट काफ़ी होता है. वाई-फ़ाई आरटीटी सीटीएस टेस्ट के नतीजे एक जैसे रखने के लिए, पक्का करें कि चैनल का इस्तेमाल कम हो.
डेस्कटॉप मशीन का सेटअप
चेतावनी: CTS, 64-बिट Linux मशीनों पर काम करता है. CTS, Windows OS या MacOS पर काम नहीं करता.
FFMPEG
होस्ट मशीन पर ffmpeg का 5.1.3 (या इसके बाद का) वर्शन इंस्टॉल करें.
होस्ट मशीन से जुड़ी ज़रूरी शर्तें
CTS होस्ट मशीन के लिए, कम से कम 32 जीबी रैम और 256 जीबी डिस्क कैपेसिटी ज़रूरी है. यह ज़रूरी है, ताकि ज़्यादा सीटीएस टेस्ट केस और Tradefed में जावा हेप स्पेस रिज़र्वेशन को शामिल किया जा सके.
ADB और AAPT2
सीटीएस चलाने से पहले, पक्का करें कि आपने Android Debug Bridge (adb) और Android एसेट पैकेजिंग टूल (AAPT2), दोनों के नए वर्शन इंस्टॉल किए हों. साथ ही, उन टूल की जगह को अपनी मशीन के सिस्टम पाथ में जोड़ दिया हो.
ADB और AAPT2 इंस्टॉल करने के लिए, Android Studio के SDK मैनेजर या sdkmanager कमांड-लाइन टूल से, Android SDK प्लैटफ़ॉर्म टूल और Android SDK बिल्ड टूल के नए वर्शन डाउनलोड करें.
पक्का करें कि adb
और aapt2
आपके सिस्टम पाथ में हों. इस कमांड से यह माना जाता है कि आपने पैकेज के संग्रह को अपनी होम डायरेक्ट्री में, android-sdk
नाम की सब-डायरेक्ट्री में डाउनलोड किया है:
export PATH=$PATH:$HOME/android-sdk/platform-tools:$HOME/android-sdk/build-tools/<tools version number>
Ubuntu के लिए Java डेवलपमेंट किट
Java डेवलपमेंट किट (JDK) का सही वर्शन इंस्टॉल करें.
- Android 11 के लिए, OpenJDK11 इंस्टॉल करें.
- Android 9 और Android 10 के लिए, OpenJDK9 इंस्टॉल करें.
- Android 7.0, 7.1, 8.0, और 8.1 के लिए, OpenJDK8 इंस्टॉल करें.
ज़्यादा जानकारी के लिए, JDK से जुड़ी ज़रूरी शर्तें देखें.
Python के लिए सहायता सेट अप करना
अपने प्लैटफ़ॉर्म के लिए virtualenv
इंस्टॉल करें. इसके लिए, इंस्टॉल करने के निर्देशों का पालन करें.
virtualenv -h
को लागू करके, यह पुष्टि की जा सकती है कि इंस्टॉलेशन पूरा हो गया है.
सीटीएस फ़ाइलें
Compatibility Test Suite Downloads से, अपने डिवाइसों के Android वर्शन और उन सभी ऐप्लिकेशन बाइनरी इंटरफ़ेस (एबीआई) के हिसाब से सीटीएस पैकेज डाउनलोड करें जिन पर आपके डिवाइस काम करते हैं.
सीटीएस मीडिया फ़ाइलों का नया वर्शन डाउनलोड करें और खोलें.
Mainline से जुड़ी सीटीएस फ़ाइलें डाउनलोड करें (ज़रूरी नहीं)
पहली बार किसी CTS वर्शन को चलाने पर, CTS डाइनैमिक तौर पर मुख्य लाइन से जुड़ी कुछ CTS फ़ाइलें डाउनलोड करता है. इससे, आपके नेटवर्क की स्पीड के हिसाब से, रन टाइम में कम से कम 10 मिनट का समय जुड़ जाता है.
सीटीएस वर्शन को चलाने में लगने वाले समय को कम करने के लिए, सीटीएस वर्शन को चलाने से पहले, Mainline से जुड़ी सीटीएस फ़ाइलें डाउनलोड की जा सकती हैं. इसके लिए, इन निर्देशों का पालन करें:
डिवाइस पर Android एपीआई लेवल जानने के लिए, यह तरीका अपनाएं:
adb shell getprop ro.build.version.sdk
Mainline CTS फ़ाइलें डाउनलोड करने के लिए,
download_mcts.sh
स्क्रिप्ट में दिए गए निर्देशों का पालन करें.आपके इंटरनेट की स्पीड के हिसाब से, डाउनलोड होने में कम से कम 10 मिनट लगते हैं.
डिवाइस का पता लगाना
अपने डिवाइस का पता लगाने के लिए, सिस्टम को सेट अप करने का तरीका अपनाएं.
मेमोरी की सीमा
हो सकता है कि आप cts-tradefed स्क्रिप्ट में, टेस्ट रन के दौरान उपलब्ध ज़्यादा से ज़्यादा मेमोरी बढ़ाना चाहें. ज़्यादा जानकारी के लिए, example CL देखें.
Android डिवाइस का सेटअप
उपयोगकर्ता के बनाए गए कलेक्शन
काम करने वाले डिवाइस को ऐसे डिवाइस के तौर पर परिभाषित किया जाता है जिसमें उपयोगकर्ता/रिलीज़-की से साइन किया गया बिल्ड हो. आपके डिवाइस पर, कोडनेम, टैग, और बिल्ड नंबर से पता चलने वाले, काम करने वाले उपयोगकर्ता बिल्ड (Android 4.0 या उसके बाद के वर्शन) के आधार पर सिस्टम इमेज चलनी चाहिए.
पहला एपीआई लेवल बिल्ड प्रॉपर्टी
सीटीएस की कुछ ज़रूरी शर्तें, उस बिल्ड पर निर्भर करती हैं जिसे डिवाइस के साथ मूल रूप से शिप किया गया था. उदाहरण के लिए, जिन डिवाइसों को मूल रूप से पुराने वर्शन के साथ शिप किया गया है उन पर, बाद के वर्शन के साथ शिप किए गए डिवाइसों पर लागू होने वाली सिस्टम की ज़रूरी शर्तें शायद लागू न हों.
इस जानकारी को CTS के लिए उपलब्ध कराने के लिए, डिवाइस बनाने वाली कंपनियां, बिल्ड टाइम प्रॉपर्टी ro.product.first_api_level
तय कर सकती थीं. इस प्रॉपर्टी की वैल्यू, वह पहला एपीआई लेवल होता है जिस पर डिवाइस को व्यावसायिक तौर पर लॉन्च किया गया था.
डिवाइस बनाने वाली कंपनियां, एक ही डिवाइस ग्रुप में मौजूद किसी मौजूदा प्रॉडक्ट को अपग्रेड करके नया प्रॉडक्ट लॉन्च करने के लिए, पहले से मौजूद सामान्य तरीके का फिर से इस्तेमाल कर सकती हैं. डिवाइस बनाने वाली कंपनियां, मौजूदा प्रॉडक्ट के एपीआई लेवल को ro.product.first_api_level
पर सेट कर सकती हैं. इससे, CTS और Treble/VTS के लिए अपग्रेड की ज़रूरी शर्तें लागू हो जाती हैं.
डिवाइस बनाने वाली कंपनियां, इस प्रॉपर्टी को सेट करने के लिए अपनी device.mk
फ़ाइल में PRODUCT_SHIPPING_API_LEVEL
तय कर सकती हैं. इसका उदाहरण यहां दिया गया है:
# PRODUCT_SHIPPING_API_LEVEL sets ro.product.first_api_level to indicate
# the first api level that the device has been commercially launched on.
PRODUCT_SHIPPING_API_LEVEL := 21
Android 9 या उसके बाद के वर्शन के लिए पहला एपीआई लेवल
Android 9 या इसके बाद के वर्शन वाले डिवाइसों के लिए, ro.product.first_api_level
प्रॉपर्टी को कोडनेम, टैग, और बिल्ड नंबर में से किसी मान्य वैल्यू पर सेट करें.
Android 8.x या इससे पहले के वर्शन के लिए पहला एपीआई लेवल
Android 8.x या इससे पहले के वर्शन पर लॉन्च किए गए डिवाइसों के लिए, प्रॉडक्ट के पहले बिल्ड के लिए ro.product.first_api_level
प्रॉपर्टी को अनसेट (हटाएं). इसके बाद के सभी बिल्ड के लिए, ro.product.first_api_level
को एपीआई लेवल की सही वैल्यू पर सेट करें. इससे प्रॉपर्टी, किसी नए प्रॉडक्ट की सही पहचान कर पाती है और प्रॉडक्ट के पहले एपीआई लेवल की जानकारी को सुरक्षित रख पाती है. अगर फ़्लैग को सेट नहीं किया गया है, तो Android Build.VERSION.SDK_INT
को ro.product.first_api_level
को असाइन करता है.
सीटीएस शिम पैकेज
Android 10 या इसके बाद के वर्शन में, APEX नाम का पैकेज फ़ॉर्मैट शामिल होता है. APEX मैनेजमेंट एपीआई के लिए सीटीएस टेस्ट चलाने के लिए, आपको /system
पार्टीशन पर CtsShimApex
पैकेज को पहले से इंस्टॉल करना होगा. जैसे, नए वर्शन पर अपडेट करना या चालू APEX की रिपोर्टिंग करना.
APEX शिम की पुष्टि करने वाला टेस्ट, CtsShimApex
के लागू होने की पुष्टि करता है.
ro.apex.updatable requirements
अगर
ro.apex.updatable
प्रॉपर्टी कोtrue
पर सेट किया जाता है, तो APEX पैकेज मैनेजमेंट के साथ काम करने वाले सभी डिवाइसों के लिएCtsShimApex
की ज़रूरत होती है.अगर
ro.apex.updatable
प्रॉपर्टी मौजूद नहीं है या सेट नहीं है, तोCtsShimApex
को डिवाइस पर पहले से इंस्टॉल करने की ज़रूरत नहीं है.
APEX शिम की पुष्टि करने वाला टेस्ट, CtsShimApex
के लागू होने की पुष्टि करता है.
CtsShim पहले से इंस्टॉल और पहले से लोड होता है
Android 11 से, CtsShimApex
में दो पहले से बने ऐप्लिकेशन (बिल्ड सोर्स से बनाए गए) शामिल हैं. इनमें मेनिफ़ेस्ट के अलावा कोई कोड नहीं होता. CTS, इन ऐप्लिकेशन का इस्तेमाल करके, ऐक्सेस लेवल और अनुमतियों की जांच करता है.
अगर डिवाइस पर APEX पैकेज मैनेजमेंट की सुविधा काम नहीं करती है (यानी, ro.apex.updatable
प्रॉपर्टी मौजूद नहीं है या सेट नहीं है) या डिवाइस पर Android 10 या उससे पहले का वर्शन चल रहा है, तो पहले से बने दो ऐप्लिकेशन को सिस्टम में अलग-अलग इंस्टॉल करना ज़रूरी है.
अगर APEX काम करता है, तो सही रिलीज़ के लिए पहले से इंस्टॉल किए गए ऐप्लिकेशन को /system/apex/com.android.apex.cts.shim.apex
के तौर पर रखा जाना चाहिए.
अगर पहले से बने ऐप्लिकेशन का इस्तेमाल किया जाता है, तो सही रिलीज़ के लिए CtsShim
और CtsShimPriv
को /system/app/CtsShimPrebuilt.apk
और /system/priv-app/CtsShimPrivPrebuilt.apk
के तौर पर रखा जाना चाहिए.
यहां दी गई टेबल में, हर डिवाइस वर्शन और आर्किटेक्चर के लिए, पहले से इंस्टॉल और पहले से लोड किए गए ऐप्लिकेशन की सूची दी गई है.
डिवाइस वर्शन | को पहले से इंस्टॉल करना (अगर APEX काम करता है) |
प्रीलोड | ||
---|---|---|---|---|
सेट करें | x86 | सेट करें | x86 | |
Android 15 | android15-arm-release | android15-x86-release | android15-arm-CtsShim.apk | android15-x86-CtsShim.apk |
Android 14 | android14-arm-release | android14-x86-release | android14-arm-CtsShim.apk | android14-x86-CtsShim.apk |
Android 13 | android13-arm-release | android13-x86-release | android13-arm-CtsShim.apk | android13-x86-CtsShim.apk |
Android 12 | android12-arm-release | android12-x86-release | android12-arm-CtsShim.apk | android12-x86-CtsShim.apk |
Android 11 | android11-arm-release | android11-x86-release | android11-arm-CtsShim.apk | android11-x86-CtsShim.apk |
Android 10 | android10-release | android10-arm-CtsShim.apk | android10-x86-CtsShim.apk | |
Android 9, O, और O-MR1 | लागू नहीं | लागू नहीं | arm-CtsShim.apk | x86-CtsShim.apk |
टेस्ट पास करने के लिए, ऐप्लिकेशन को फिर से साइन किए बिना, सिस्टम इमेज पर सही डायरेक्ट्री में ऐप्लिकेशन को पहले से लोड करें.
सैंपल ऐप्लेट
Android 9 में, Open Mobile API की सुविधा लॉन्च की गई थी. एक से ज़्यादा सुरक्षित एलिमेंट की जानकारी देने वाले डिवाइसों के लिए, CTS टेस्ट केस जोड़ता है. इससे, Open Mobile API के व्यवहार की पुष्टि की जा सकती है. इन टेस्ट केस के लिए, डीयूटी के एम्बेड किए गए सुरक्षित एलिमेंट (eSE) या डीयूटी के इस्तेमाल किए गए सिम कार्ड में, सैंपल ऐप्लेट को एक बार इंस्टॉल करना ज़रूरी है. eSE सैंपल ऐप्लेट और सिम सैंपल ऐप्लेट, AOSP में मिल सकते हैं.
Open Mobile API के टेस्ट केस और ऐक्सेस कंट्रोल के टेस्ट केस के बारे में ज़्यादा जानकारी के लिए, सिक्योर एलिमेंट के लिए सीटीएस टेस्ट देखें.
स्टोरेज से जुड़ी ज़रूरी शर्तें
सीटीएस मीडिया स्ट्रेस टेस्ट के लिए, वीडियो क्लिप को बाहरी स्टोरेज (/sdcard
) में होना ज़रूरी है. ज़्यादातर क्लिप, Big Buck Bunny से ली गई हैं. इसका कॉपीराइट, Blender Foundation के पास है. यह क्लिप, Creative Commons Attribution 3.0 लाइसेंस के तहत उपलब्ध है.
ज़रूरी स्टोरेज, डिवाइस पर वीडियो चलाने के लिए इस्तेमाल किए जा सकने वाले ज़्यादा से ज़्यादा रिज़ॉल्यूशन पर निर्भर करता है. ज़रूरी रिज़ॉल्यूशन के प्लैटफ़ॉर्म वर्शन के लिए, Android के साथ काम करने की जानकारी देने वाले दस्तावेज़ का सेक्शन 5 देखें.
वीडियो चलाने के लिए, ज़्यादा से ज़्यादा रिज़ॉल्यूशन के हिसाब से स्टोरेज की ज़रूरतें यहां दी गई हैं:
- 480x360: 98 एमबी
- 720x480: 193 एमबी
- 1280x720: 606 एमबी
- 1920x1080: 1863 एमबी
स्क्रीन और स्टोरेज
- जिस डिवाइस में स्क्रीन नहीं है उसे किसी स्क्रीन से कनेक्ट करना होगा.
अगर डिवाइस में मेमोरी कार्ड स्लॉट है, तो कोई खाली एसडी कार्ड प्लग इन करें. ऐसे एसडी कार्ड का इस्तेमाल करें जो एसडीएचसी या एसडीएक्ससी कैपेसिटी के साथ, अल्ट्रा हाई स्पीड (यूएचएस) बस के साथ काम करता हो. इसके अलावा, कम से कम स्पीड क्लास 10 या उससे ज़्यादा वाला एसडी कार्ड भी इस्तेमाल किया जा सकता है, ताकि यह पक्का किया जा सके कि वह सीटीएस की ज़रूरी शर्तें पूरी करता हो.
अगर डिवाइस में सिम कार्ड स्लॉट हैं, तो हर स्लॉट में चालू सिम कार्ड डालें. अगर डिवाइस पर एसएमएस की सुविधा काम करती है, तो हर सिम कार्ड के लिए नंबर फ़ील्ड में नंबर डाला जाना चाहिए. Android 12 या उसके बाद के वर्शन वाले डिवाइसों के लिए, यह ज़रूरी है कि सभी सिम कार्ड में छोटा डायल करने के लिए नंबर (ADN) सेव करने की सुविधा हो. टेलीकॉम डेडिकेटेड फ़ाइल (DFTelecom) वाले जीएसएम और यूएसआईएम कार्ड, इस ज़रूरी शर्त को पूरा करते हैं.
डेवलपर UICC
सीटीएस कैरियर एपीआई टेस्ट चलाने के लिए, डिवाइस में ऐसी सिम का इस्तेमाल करना ज़रूरी है जिसमें सीटीएस कैरियर की अनुमतियां हों. साथ ही, यह सिम यूआईसीसी तैयार करना में बताई गई ज़रूरी शर्तों को पूरा करती हो.
Android डिवाइस का कॉन्फ़िगरेशन
डिवाइस को फ़ैक्ट्री डेटा रीसेट करें: सेटिंग > बैकअप लें और रीसेट करें > फ़ैक्ट्री डेटा रीसेट करें.
अपने डिवाइस की भाषा को अंग्रेज़ी (अमेरिका) पर सेट करें: सेटिंग > language & input > Language.
अगर डिवाइस पर डिफ़ॉल्ट फ़ॉन्ट में बदलाव किया जा सकता है, तो डिफ़ॉल्ट
sans-serif
फ़ॉन्ट फ़ैमिली कोRoboto
पर सेट करें. यह AOSP बिल्ड में इस्तेमाल की जाने वाली डिफ़ॉल्टsans-serif
फ़ॉन्ट फ़ैमिली है.अगर डिवाइस में जीपीएस या वाई-फ़ाई/सेल्युलर नेटवर्क की सुविधा है, तो जगह की जानकारी की सेटिंग चालू करें: सेटिंग > जगह की जानकारी > चालू करें.
किसी ऐसे वाई-फ़ाई नेटवर्क से कनेक्ट करें जो IPv6 के साथ काम करता हो. साथ ही, डीयूटी को अलग-थलग क्लाइंट (ऊपर भौतिक वातावरण देखें) के तौर पर इस्तेमाल कर सकता हो और उसमें इंटरनेट कनेक्शन हो: सेटिंग > वाई-फ़ाई.
पक्का करें कि डिवाइस पर कोई लॉक पैटर्न या पासवर्ड सेट न किया गया हो: सेटिंग > सुरक्षा > स्क्रीन लॉक > कोई नहीं.
अपने डिवाइस पर यूएसबी डीबगिंग की सुविधा चालू करें: सेटिंग > डेवलपर के लिए सेटिंग और टूल > यूएसबी डीबगिंग.
समय को 12-घंटे वाले फ़ॉर्मैट में सेट करें: सेटिंग > तारीख और समय > 24-घंटे वाला फ़ॉर्मैट इस्तेमाल करें > बंद करें.
डिवाइस को चालू रहने के लिए सेट करें: सेटिंग > डेवलपर के लिए सेटिंग और टूल > डिवाइस चालू रखें > चालू करें.
सिर्फ़ Android 5.x और 4.4.x में, डिवाइस को नकली जगह की जानकारी की अनुमति देने के लिए सेट करें: सेटिंग > डेवलपर के लिए सेटिंग और टूल > नकली जगह की जानकारी की अनुमति दें > चालू करें.
Android 4.2 या उसके बाद के वर्शन में, यूएसबी से ऐप्लिकेशन की पुष्टि करने की सुविधा बंद करें: सेटिंग > डेवलपर के लिए सेटिंग और टूल > यूएसबी से ऐप्लिकेशन की पुष्टि करें > बंद करें.
Android 13 या उसके बाद के वर्शन में, डिवाइस को मॉक मोडेम की अनुमति देने के लिए सेट करें: सेटिंग > डेवलपर के लिए सेटिंग और टूल > मॉक मोडेम की अनुमति दें > चालू करें.
ब्राउज़र लॉन्च करें और स्टार्टअप/सेटअप स्क्रीन को बंद करें.
डिवाइस की जांच करने के लिए इस्तेमाल की जाने वाली डेस्कटॉप मशीन को यूएसबी केबल से कनेक्ट करें.
सीटीएस चलाने से पहले, उपयोगकर्ता के ऐक्सेस किए जा सकने वाले अवसर (छिपी हुई नहीं) की सेटिंग का इस्तेमाल करके, Roboto2 को सैंस-सरफ़़ फ़ॉन्ट के तौर पर सेट करें.
फ़ाइल इंस्टॉल करना
डिवाइस पर सहायक ऐप्लिकेशन इंस्टॉल और कॉन्फ़िगर करें.
अपने डिवाइस को CTS वर्शन के हिसाब से सेट अप करें:
CTS के 2.1 R2 से 4.2 R4 वर्शन: अपने डिवाइस (या एमुलेटर) को सेट अप करें, ताकि इनके साथ सुलभता जांच की जा सके:
adb install -r android-cts/repository/testcases/CtsDelegatingAccessibilityService.apk
डिवाइस पर, ऐक्सेस देने की सुविधा चालू करें: सेटिंग > सुलभता > सुलभता > सुलभता सेवा को ऐक्सेस करने की अनुमति देना.
CTS के 6.x या इससे पहले के वर्शन:
android.software.device_admin
का एलान करने वाले डिवाइसों पर, डिवाइस मैनेजमेंट टेस्ट चलाने के लिए, अपने डिवाइस को सेट अप करें. इसके लिए, इनका इस्तेमाल करें:adb install -r android-cts/repository/testcases/CtsDeviceAdmin.apk`
सेटिंग > सुरक्षा > डिवाइस एडमिन चुनें में जाकर, दो
android.deviceadmin.cts.CtsDeviceAdminReceiver*
डिवाइस एडमिन को चालू करें. पक्का करें कि डिवाइस में पहले से मौजूदandroid.deviceadmin.cts.CtsDeviceAdminDeactivatedReceiver
और अन्य एडमिन खाते बंद रहें.
सीटीएस मीडिया फ़ाइलों को डिवाइस में इस तरह कॉपी करें:
- उस पाथ पर जाएं (
cd
) जहां मीडिया फ़ाइलें डाउनलोड और अनज़िप की गई हैं. फ़ाइल की अनुमतियां बदलना:
chmod u+x copy_media.sh
ज़रूरी फ़ाइलें कॉपी करें:
720x480 रिज़ॉल्यूशन तक की क्लिप कॉपी करने के लिए, यह चलाएं:
./copy_media.sh 720x480
अगर आपको ज़्यादा से ज़्यादा रिज़ॉल्यूशन के बारे में नहीं पता है, तो सभी फ़ाइलों को कॉपी करें:
./copy_media.sh all
अगर adb में एक से ज़्यादा डिवाइस हैं, तो किसी डिवाइस का सीरियल विकल्प (
-s
) आखिर में जोड़ें. उदाहरण के लिए, सीरियल 1234567 वाले डिवाइस पर 720x480 तक कॉपी करने के लिए, यह चलाएं:./copy_media.sh 720x480 -s 1234567
- उस पाथ पर जाएं (