हमेशा अपने Android ऐप्लिकेशन को लोगों के लिए रिलीज़ करने से पहले, किसी असली डिवाइस पर टेस्ट करें. इस पेज पर, Android डीबग ब्रिज (ADB) कनेक्शन के ज़रिए टेस्टिंग और डीबग करने के लिए, डेवलपमेंट एनवायरमेंट और Android डिवाइस को सेट अप करने का तरीका बताया गया है.
डेवलपमेंट के लिए डिवाइस सेट अप करना
अपने डिवाइस पर डीबग करने की प्रोसेस शुरू करने से पहले, यह तय करें कि आपको डिवाइस को यूएसबी केबल या वाई-फ़ाई से कनेक्ट करना है. इसके बाद, यह तरीका अपनाएं:
डिवाइस पर, सेटिंग ऐप्लिकेशन खोलें. इसके बाद, डेवलपर के लिए सेटिंग और टूल चुनें. अब यूएसबी डीबग करना को चालू करें (अगर लागू हो).
अपने सिस्टम को इस तरह सेट अप करें कि वह आपके डिवाइस का पता लगा सके.
- ChromeOS: इसके लिए, किसी और कॉन्फ़िगरेशन की ज़रूरत नहीं होती है.
- macOS: इसके लिए, किसी और कॉन्फ़िगरेशन की ज़रूरत नहीं होती.
- Windows: अगर लागू हो, तो ADB के लिए यूएसबी ड्राइवर इंस्टॉल करें. इंस्टॉल करने की गाइड और ओईएम ड्राइवर के लिंक के लिए, ओईएम यूएसबी ड्राइवर इंस्टॉल करें लेख पढ़ें.
Ubuntu Linux: इन्हें सेट अप करें:
- ADB का इस्तेमाल करने वाले हर उपयोगकर्ता को
plugdev
ग्रुप में शामिल होना चाहिए. अगर आपको गड़बड़ी का ऐसा मैसेज दिखता है जिसमें बताया गया है कि आपplugdev
ग्रुप में शामिल नहीं हैं, तो खुद को इस ग्रुप में शामिल करने के लिए, यह कमांड इस्तेमाल करें:
sudo usermod -aG plugdev $LOGNAME
ग्रुप सिर्फ़ लॉग इन करने पर अपडेट होते हैं. इसलिए, इस बदलाव को लागू करने के लिए आपको लॉग आउट करना होगा. फिर से लॉग इन करने पर,
id
का इस्तेमाल करके यह देखा जा सकता है कि आपplugdev
ग्रुप में शामिल हैं या नहीं.- सिस्टम में
udev
नियम इंस्टॉल होने चाहिए, जो डिवाइस को कवर करते हों.android-sdk-platform-tools-common
पैकेज में, Android डिवाइसों के लिएudev
नियमों का डिफ़ॉल्ट सेट होता है. इसे कम्यूनिटी मैनेज करती है. इसे इंस्टॉल करने के लिए, इस कमांड का इस्तेमाल करें:
apt-get install android-sdk-platform-tools-common
- ADB का इस्तेमाल करने वाले हर उपयोगकर्ता को
यूएसबी केबल का इस्तेमाल करके अपने डिवाइस से कनेक्ट करना
सेट अप करने के बाद, यूएसबी के ज़रिए प्लग इन करें. इसके बाद, Android Studio में चलाएं
पर क्लिक करके, डिवाइस पर ऐप्लिकेशन बनाएं और उसे चलाएं.
निर्देश देने के लिए, adb
का इस्तेमाल भी किया जा सकता है. जैसे:
- पुष्टि करें कि आपका डिवाइस कनेक्ट है. इसके लिए, अपनी
android_sdk/platform-tools/
डायरेक्ट्री सेadb devices
कमांड चलाएं. कनेक्ट होने पर, आपको डिवाइस की सूची दिखेगी. - अपने डिवाइस को टारगेट करने के लिए,
-d
फ़्लैग के साथ कोई भीadb
निर्देश जारी करें.
वाई-फ़ाई का इस्तेमाल करके अपने डिवाइस से कनेक्ट करना
Android 11 और इसके बाद के वर्शन वाले डिवाइसों पर, Android डीबग ब्रिज (ADB) की मदद से, अपने वर्कस्टेशन से ऐप्लिकेशन को वायरलेस तरीके से डिप्लॉय और डीबग किया जा सकता है. उदाहरण के लिए, अपने डीबग किए जा सकने वाले ऐप्लिकेशन को कई रिमोट डिवाइसों पर डिप्लॉय किया जा सकता है. इसके लिए, आपको अपने डिवाइस को यूएसबी से कनेक्ट करने की ज़रूरत नहीं होती. साथ ही, आपको यूएसबी कनेक्शन से जुड़ी सामान्य समस्याओं का सामना नहीं करना पड़ता. जैसे, ड्राइवर इंस्टॉल करना.
वायरलेस डीबगिंग का इस्तेमाल करने के लिए, आपको अपने डिवाइस को वर्कस्टेशन से जोड़ना होगा. इसके लिए, आपको पेयरिंग कोड का इस्तेमाल करना होगा. शुरू करने के लिए, यह तरीका अपनाएं:
- पक्का करें कि आपका वर्कस्टेशन और डिवाइस, एक ही वायरलेस नेटवर्क से कनेक्ट हों.
- पक्का करें कि आपके डिवाइस में Android 11 या इसके बाद का वर्शन हो. ज़्यादा जानकारी के लिए, अपने डिवाइस का Android वर्शन देखना और उसे अपडेट करना लेख पढ़ें.
- पक्का करें कि आपने Android Studio का नया वर्शन इंस्टॉल किया हो. इसे यहां से डाउनलोड करें.
- अपने वर्कस्टेशन पर, SDK Platform Tools को नए वर्शन पर अपडेट करें.
अपने डिवाइस से कनेक्ट करने के लिए, यह तरीका अपनाएं:
- Android Studio खोलें और रन कॉन्फ़िगरेशन मेन्यू से, वाई-फ़ाई का इस्तेमाल करके डिवाइसों को जोड़ें चुनें.
पहली इमेज. कॉन्फ़िगरेशन चलाएं मेन्यू.
दूसरी इमेज. क्यूआर कोड या डिवाइस जोड़ने वाले कोड का इस्तेमाल करके, डिवाइसों को कनेक्ट करने के लिए डायलॉग. - अपने डिवाइस पर डेवलपर विकल्प चालू करें.
- अपने डिवाइस पर, वाई-फ़ाई से डीबग करने की सुविधा चालू करें.
तीसरी इमेज. Google Pixel फ़ोन पर वायरलेस डीबगिंग की सेटिंग. - वॉयरलेस डीबगिंग पर टैप करें और अपना डिवाइस जोड़ें:
- अपने डिवाइस को क्यूआर कोड से जोड़ने के लिए, क्यूआर कोड की मदद से डिवाइस जोड़ें को चुनें. इसके बाद, इमेज 2 में दिखाया गया क्यूआर कोड स्कैन करें.
- अपने डिवाइस को जोड़ने के लिए कोड का इस्तेमाल करने के लिए, वाई-फ़ाई से नए डिवाइस जोड़ें डायलॉग में जाकर, डिवाइस को जोड़ने के लिए कोड का इस्तेमाल करें को चुनें. अपने डिवाइस पर, डिवाइस जोड़ने का कोड इस्तेमाल करके जोड़ें को चुनें. आपको छह अंकों वाला कोड दिखेगा. जब आपका डिवाइस वाई-फ़ाई से डिवाइसों को जोड़ें विंडो पर दिखने लगे, तब अपने डिवाइस पर दिखाया गया छह अंकों का कोड डालें. इसके बाद, जोड़ें को चुनें.
चौथी इमेज. छह अंकों वाले जोड़ने के कोड को डालने का उदाहरण.
- डिवाइस से जोड़ने के बाद, अपने ऐप्लिकेशन को डिवाइस पर डिप्लॉय किया जा सकता है.
किसी दूसरे डिवाइस को कनेक्ट करने या अपने वर्कस्टेशन से इस डिवाइस को हटाने के लिए:
- अपने डिवाइस पर वायरलेस डीबगिंग पर जाएं.
- जोड़े गए डिवाइस में जाकर, अपने वर्कस्टेशन के नाम पर टैप करें.
- भूल जाएं को चुनें.
डिवाइस की स्क्रीन शेयर करना
Android Studio में, डिवाइस चल रहे हैं विंडो में अपने फ़िज़िकल डिवाइस को मिरर किया जा सकता है. अपने डिवाइस की स्क्रीन को सीधे Android Studio पर स्ट्रीम करके, Studio IDE का इस्तेमाल करके सामान्य कार्रवाइयां की जा सकती हैं. जैसे, ऐप्लिकेशन शुरू करना और उनसे इंटरैक्ट करना, स्क्रीन घुमाना, फ़ोन को फ़ोल्ड और अनफ़ोल्ड करना, और आवाज़ कम या ज़्यादा करना.
यूएसबी या वायरलेस डीबगिंग की सुविधा चालू होने पर, कंप्यूटर से कनेक्ट किए गए डिवाइसों पर डिवाइस मिररिंग की सुविधा हमेशा उपलब्ध रहती है. चालू डिवाइस विंडो या डिवाइस मैनेजर (व्यू > टूल विंडो > डिवाइस मैनेजर) का इस्तेमाल करके, मिररिंग शुरू और बंद की जा सकती है. डिवाइस मिरर करने की सुविधा कब चालू होगी, इसे भी अपनी पसंद के मुताबिक सेट किया जा सकता है. इसके लिए, सेटिंग > टूल > डिवाइस मिरर करना पर जाएं.
ऑडियो रीडायरेक्ट करना
डिवाइस मिरर करने की सुविधा का इस्तेमाल करते समय, कनेक्ट किए गए फ़िज़िकल डिवाइसों से ऑडियो को अपने कंप्यूटर के स्पीकर या हेडफ़ोन पर रीडायरेक्ट किया जा सकता है. ऑडियो रीडायरेक्शन की सुविधा की मदद से, अपने हेडफ़ोन को कंप्यूटर से कनेक्ट रखें. साथ ही, कंप्यूटर और कनेक्ट किए गए फ़ोन, दोनों से ऑडियो सुनें. इसके लिए, आपको एक डिवाइस से कनेक्ट करने के बाद, दूसरे डिवाइस से कनेक्ट करने की ज़रूरत नहीं पड़ेगी. ऑडियो रीडायरेक्ट करने की सुविधा चालू करने के लिए, फ़ाइल (macOS पर Android Studio) > सेटिंग > टूल > डिवाइस मिररिंग पर जाएं. इसके बाद, स्थानीय डिवाइसों से ऑडियो रीडायरेक्ट करें को चुनें. ध्यान दें कि Android 12 या इसके बाद के वर्शन पर काम करने वाले Firebase Test Lab डिवाइसों के लिए, ऑडियो हमेशा रीडायरेक्ट किया जाता है. भले ही, सेटिंग कुछ भी हों.
पहले से मालूम समस्याएं
ऐसा हो सकता है कि कुछ डिवाइसों में, डिवाइस मिररिंग के लिए ज़रूरी बिटरेट पर एन्कोड करने की सुविधा न हो. इन स्थितियों में, आपको चल रहे डिवाइस विंडो में गड़बड़ी दिख सकती है. साथ ही, आपको इस तरह के लॉग भी दिख सकते हैं.
2023-06-01 15:32:22,675 [ 56094] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - Too many video encoder errors:
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - encoder: c2.android.vp8.encoder
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - mime type: video/x-vnd.on2.vp8
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - max resolution: 640x640
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - min resolution: 2x2
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - alignment: 2x2
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - max frame rate: 960
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - max frame rate for 288x640: 960
2023-06-01 15:32:22,870 [ 56289] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - max bitrate: 20000000
2023-06-01 15:32:22,871 [ 56290] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - terminated with code 1
निजता नोटिस
डिवाइस मिरर करने की सेटिंग के आधार पर, Android Studio कनेक्ट किए गए और पेयर किए गए किसी भी डिवाइस के लिए, डिवाइस मिरर करने की सुविधा अपने-आप शुरू कर सकता है. इससे adb tcpip
कमांड से कनेक्ट किए गए डिवाइसों की जानकारी ज़ाहिर हो सकती है. ऐसा इसलिए, क्योंकि मिररिंग की जानकारी और कमांड, बिना एन्क्रिप्ट (सुरक्षित) किए गए चैनल पर पास की जाती हैं. इसके अलावा, Android Studio, adb सर्वर से कम्यूनिकेट करने के लिए, बिना एन्क्रिप्ट (सुरक्षित) किए गए चैनल का इस्तेमाल करता है. इसलिए, मिरर की गई जानकारी को आपकी होस्ट मशीन पर मौजूद अन्य लोग इंटरसेप्ट कर सकते हैं.
डिवाइस कनेक्शन से जुड़ी समस्या हल करना
अगर आपका डिवाइस Android Studio से कनेक्ट नहीं हो रहा है, तो इस समस्या को हल करने के लिए यह तरीका आज़माएं:
Connection Assistant की मदद से समस्या हल करना
कनेक्शन असिस्टेंट, एडीबी कनेक्शन पर किसी डिवाइस को सेट अप करने और उसका इस्तेमाल करने के बारे में सिलसिलेवार निर्देश देती है.
सहायता पाने के लिए, टूल > डिवाइस कनेक्शन से जुड़ी समस्या हल करें को चुनें.
कनेक्शन असिस्टेंट, Assistant पैनल के कई पेजों पर निर्देश, कॉन्टेक्स्ट के हिसाब से कंट्रोल, और कनेक्ट किए गए डिवाइसों की सूची दिखाती है. ज़रूरत के मुताबिक पेजों पर जाने के लिए, Assistant पैनल में सबसे नीचे मौजूद आगे बढ़ें और पीछे जाएं बटन का इस्तेमाल करें:
- यूएसबी के ज़रिए डिवाइस कनेक्ट करना: Connection Assistant सबसे पहले आपको यूएसबी के ज़रिए डिवाइस कनेक्ट करने के लिए कहती है. साथ ही, यह यूएसबी डिवाइसों को फिर से स्कैन करें बटन उपलब्ध कराती है. इस बटन की मदद से, कनेक्ट किए गए डिवाइसों के लिए नया स्कैन शुरू किया जा सकता है.
- यूएसबी डीबग करने की सुविधा चालू करें: इसके बाद, Connection Assistant आपको डिवाइस पर डेवलपर के लिए उपलब्ध विकल्पों में जाकर, यूएसबी डीबग करने की सुविधा चालू करने का तरीका बताता है.
- ADB सर्वर को रीस्टार्ट करें: अगर आपको अब भी उपलब्ध डिवाइसों की सूची में अपना डिवाइस नहीं दिख रहा है, तो Connection Assistant के आखिरी पेज पर मौजूद ADB सर्वर को रीस्टार्ट करें बटन का इस्तेमाल करें. ADB सर्वर को रीस्टार्ट करने पर, ADB डिवाइसों को फिर से स्कैन करता है. अगर आपको अब भी उपलब्ध डिवाइसों की सूची में अपना डिवाइस नहीं दिखता है, तो समस्या हल करने के लिए यहां दिया गया तरीका अपनाएं.
यूएसबी कनेक्शन से जुड़ी समस्याएं हल करना
अगर Connection Assistant को यूएसबी केबल से कनेक्ट किया गया डिवाइस नहीं मिल रहा है, तो इस समस्या को हल करने के लिए, समस्या हल करने के ये तरीके आज़माएँ:
देखें कि Android Studio, Android Emulator से कनेक्ट हो रहा है या नहीं
यह देखने के लिए कि Android Studio और Android Emulator के बीच कनेक्शन की समस्या की वजह से तो यह गड़बड़ी नहीं हो रही है, यह तरीका अपनाएं:
- डिवाइस मैनेजर खोलें.
- अगर आपके पास पहले से कोई एवीडी नहीं है, तो एक नया एवीडी बनाएं.
- अपने AVD का इस्तेमाल करके, एम्युलेटर चलाएं.
- इनमें से कोई एक काम करें:
- अगर Android Studio, एम्युलेटर से कनेक्ट नहीं हो पा रहा है, तो एसडीके प्लैटफ़ॉर्म टूल का नया वर्शन डाउनलोड करें. इसके बाद, फिर से कोशिश करें.
- अगर एम्युलेटर सही तरीके से शुरू हो जाता है, तो नीचे दिए गए सेक्शन में बताए गए तरीके से यूएसबी केबल की जांच करें.
यूएसबी केबल की जांच करना
अगर आपको यह पता लगाना है कि यूएसबी केबल में गड़बड़ी की वजह से समस्या आ रही है, तो इस सेक्शन में दिया गया तरीका अपनाएं.
अगर आपके पास कोई दूसरा यूएसबी केबल है, तो:
- डिवाइस को दूसरी केबल से कनेक्ट करें.
- देखें कि Connection Assistant अब डिवाइस का पता लगा सकती है या नहीं.
- अगर डिवाइस का पता नहीं चलता है, तो मुख्य केबल को फिर से आज़माएं.
- अगर अब भी डिवाइस का पता नहीं चलता है, तो मान लें कि समस्या डिवाइस में है. इसके बाद, देखें कि डिवाइस को डेवलपमेंट के लिए सेट अप किया गया है या नहीं. इसके बारे में यहां बताया गया है.
अगर आपके पास दूसरी यूएसबी केबल नहीं है, लेकिन आपके पास कोई दूसरा Android डिवाइस है, तो:
- दूसरे डिवाइस को अपने कंप्यूटर से कनेक्ट करें.
अगर Connection Assistant को सेकंडरी डिवाइस का पता चल जाता है, तो मान लें कि समस्या प्राइमरी डिवाइस में है. इसके बाद, देखें कि डिवाइस को डेवलपमेंट के लिए सेट अप किया गया है या नहीं.
अगर सेकंडरी डिवाइस का पता नहीं चलता है, तो हो सकता है कि यूएसबी केबल में कोई समस्या हो.
देखें कि डिवाइस को डेवलपमेंट के लिए सेट अप किया गया है या नहीं
यह देखने के लिए कि क्या डिवाइस की सेटिंग की वजह से समस्या आ रही है, यह तरीका अपनाएं:
- डेवलपमेंट के लिए डिवाइस सेट अप करना सेक्शन में दिया गया तरीका अपनाएं.
- अगर इससे भी समस्या ठीक नहीं होती है, तो डिवाइस के ओईएम की सहायता टीम से संपर्क करें. ग्राहक सहायता प्रतिनिधि को बताएं कि डिवाइस, ADB का इस्तेमाल करके Android Studio से कनेक्ट नहीं हो रहा है.
वायरलेस कनेक्शन से जुड़ी समस्याएं हल करना
अगर आपको अपने डिवाइस को वायरलेस तरीके से कनेक्ट करने में समस्याएं आ रही हैं, तो समस्या हल करने के लिए यह तरीका अपनाएं:
देखें कि आपका वर्कस्टेशन और डिवाइस, ज़रूरी शर्तें पूरी करता हो
वॉयरलेस डीबगिंग की ज़रूरी शर्तें पूरी करने के लिए, पक्का करें कि:
- आपका वर्कस्टेशन और डिवाइस, एक ही वायरलेस नेटवर्क से कनेक्ट हो.
- आपके डिवाइस में Android 11 या इसके बाद का वर्शन हो. ज़्यादा जानकारी के लिए, अपने डिवाइस का Android वर्शन देखना और उसे अपडेट करना लेख पढ़ें.
- आपके पास Android Studio का सबसे नया वर्शन हो. इसे Android Studio के मुख्य पेज से डाउनलोड किया जा सकता है.
- आपके वर्कस्टेशन पर SDK Platform Tools का नया वर्शन हो.
आम तौर पर होने वाली अन्य समस्याओं के बारे में जानकारी
Android Studio में वायरलेस डीबगिंग से जुड़ी मौजूदा समस्याओं की सूची यहां दी गई है. साथ ही, उन्हें हल करने का तरीका भी बताया गया है:
- वाई-फ़ाई से कनेक्ट नहीं हो रहा है: कुछ वाई-फ़ाई नेटवर्क, जैसे कि कॉर्पोरेट वाई-फ़ाई नेटवर्क, पी2पी कनेक्शन को ब्लॉक कर सकते हैं. ऐसे में, आपको वाई-फ़ाई से कनेक्ट करने की अनुमति नहीं मिलेगी. किसी केबल या दूसरे वाई-फ़ाई नेटवर्क से कनेक्ट करके देखें.
- कभी-कभी, वाई-फ़ाई पर ADB की सुविधा अपने-आप बंद हो जाती है: ऐसा तब हो सकता है, जब डिवाइस वाई-फ़ाई नेटवर्क स्विच करता है या नेटवर्क से डिसकनेक्ट हो जाता है.
आरएसए सुरक्षा कुंजी
Android 4.2.2 (एपीआई लेवल 17) या उसके बाद के वर्शन वाले डिवाइस को कंप्यूटर से कनेक्ट करने पर, सिस्टम एक डायलॉग दिखाता है. इसमें पूछा जाता है कि क्या आपको आरएसए कुंजी स्वीकार करनी है. इससे इस कंप्यूटर के ज़रिए डीबग करने की अनुमति मिलती है. सुरक्षा से जुड़ा यह तरीका, उपयोगकर्ता के डिवाइसों को सुरक्षित रखता है. ऐसा इसलिए, क्योंकि यूएसबी डीबगिंग और अन्य adb
कमांड तब तक नहीं चलाई जा सकतीं, जब तक डिवाइस को अनलॉक न कर लिया जाए और डायलॉग बॉक्स में पुष्टि न कर दी जाए.