हार्डवेयर डिवाइस पर ऐप्लिकेशन चलाएं

उपयोगकर्ताओं के लिए रिलीज़ करने से पहले, अपने Android ऐप्लिकेशन की जांच हमेशा किसी असली डिवाइस पर करें. इस पेज पर, Android डीबग ब्रिज (ADB) कनेक्शन की मदद से, जांच करने और डीबग करने के लिए, अपने डेवलपमेंट एनवायरमेंट और Android डिवाइस को सेट अप करने का तरीका बताया गया है.

डिवाइस को डेवलपमेंट के लिए सेट अप करना

अपने डिवाइस पर डीबगिंग शुरू करने से पहले, यह तय करें कि आपको डिवाइस से यूएसबी केबल या वाई-फ़ाई से कनेक्ट करना है या नहीं. इसके बाद, ये कार्रवाइयां करें:

  1. डिवाइस पर, सेटिंग ऐप्लिकेशन खोलें, डेवलपर के लिए सेटिंग और टूल चुनें, और इसके बाद, यूएसबी डीबग करना (अगर लागू हो) चालू करें.

  2. अपने डिवाइस का पता लगाने के लिए, अपने सिस्टम को सेट अप करें.

    • ChromeOS: किसी और कॉन्फ़िगरेशन की ज़रूरत नहीं है.
    • macOS: किसी और कॉन्फ़िगरेशन की ज़रूरत नहीं होती.
    • Windows: ADB के लिए यूएसबी ड्राइवर इंस्टॉल करें (अगर लागू हो). किसी इंस्टॉल करने की गाइड और OEM ड्राइवर के लिंक के लिए, OEM यूएसबी इंस्टॉल करें को देखें ड्राइवर.
    • 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
      

यूएसबी का इस्तेमाल करके अपने डिवाइस से कनेक्ट करना

जब आपका कैंपेन सेट अप हो जाए और उसे यूएसबी से कनेक्ट कर दिया जाए, तब Run पर क्लिक करें करने के लिए, Android Studio में डिवाइस पर अपना ऐप्लिकेशन बनाएं और चलाएं.

निर्देश देने के लिए, adb का इस्तेमाल भी किया जा सकता है. इसके लिए, यह तरीका अपनाएं:

  • android_sdk/platform-tools/ डायरेक्ट्री से adb devices कमांड चलाकर, पुष्टि करें कि आपका डिवाइस कनेक्ट है. अगर आपने तो आपको सूची में डिवाइस दिखेगा.
  • इससे कोई भी adb निर्देश जारी करें आपके डिवाइस को टारगेट करने के लिए, -d फ़्लैग का इस्तेमाल किया जा सकता है.

वाई-फ़ाई का इस्तेमाल करके अपने डिवाइस से कनेक्ट करना

Android 11 और इसके बाद के वर्शन में, Android डीबग ब्रिज (ADB) की मदद से, अपने वर्कस्टेशन से ऐप्लिकेशन को वायरलेस तरीके से डिप्लॉय और डीबग किया जा सकता है. उदाहरण के लिए, आपके पास डीबग करने लायक अपने ऐप्लिकेशन को कई रिमोट डिवाइसों पर बिना फ़िज़िकल तौर पर डिप्लॉय करें आपके डिवाइस को यूएसबी के ज़रिए कनेक्ट करता है. साथ ही, यूएसबी कनेक्शन की सामान्य समस्याओं से जूझता है, जैसे कि ड्राइवर इंस्टॉल करना.

वायरलेस डीबगिंग का इस्तेमाल करने के लिए, आपको अपने डिवाइस को वर्कस्टेशन से जोड़ना होगा. इसके लिए, आपको जोड़ने के लिए दिए गए कोड का इस्तेमाल करना होगा. शुरू करने के लिए, नीचे दिया गया तरीका अपनाएं:

  1. पक्का करें कि आपका वर्कस्टेशन और डिवाइस एक ही वायरलेस तरीके से कनेक्ट हैं नेटवर्क.
  2. पक्का करें कि आपके डिवाइस में Android 11 या इसके बाद का वर्शन हो. ज़्यादा जानकारी के लिए, अपने डिवाइस का Android वर्शन देखना और उसे अपडेट करना लेख पढ़ें.
  3. पक्का करें कि आपके डिवाइस में Android Studio का सबसे नया वर्शन इंस्टॉल किया गया हो. इसे यहां से डाउनलोड करें.
  4. अपने वर्कस्टेशन पर, SDK प्लैटफ़ॉर्म टूल.

अपने डिवाइस से कनेक्ट करने के लिए, यह तरीका अपनाएं:

  1. Android Studio खोलें और रन से वाई-फ़ाई का इस्तेमाल करके डिवाइस को जोड़ें चुनें कॉन्फ़िगरेशन मेन्यू.
    कॉन्फ़िगरेशन ड्रॉप-डाउन चलाएं
    पहली इमेज. कॉन्फ़िगरेशन चलाएं मेन्यू चुनें.

    वाई-फ़ाई का इस्तेमाल करके डिवाइसों को जोड़ें डायलॉग दिखता है, जैसा कि दूसरी इमेज में दिखाया गया है.
    वाई-फ़ाई की पॉप-अप विंडो पर, जोड़े गए डिवाइसों का स्क्रीनशॉट
    दूसरी इमेज. जोड़ने के लिए डायलॉग वे डिवाइस जो क्यूआर कोड या दूसरे डिवाइस से जोड़ने के कोड का इस्तेमाल करते हों.
  2. डेवलपर को चालू करें विकल्प आपके डिवाइस पर.
  3. अपने डिवाइस पर, वाई-फ़ाई से डीबग करने की सुविधा चालू करें.
    Pixel फ़ोन का, वायरलेस तरीके से डीबग करने की प्रोसेस दिखाने वाला स्क्रीनशॉट
      सिस्टम सेटिंग.
    तीसरी इमेज. कॉन्टेंट बनाने Google Pixel पर वायरलेस डीबग करने की सेटिंग फ़ोन नंबर डालें.
  4. वायरलेस डीबगिंग पर टैप करें और अपने डिवाइस को दूसरे डिवाइस से जोड़ें:
    1. अपने डिवाइस को क्यूआर कोड से जोड़ने के लिए, डिवाइस को क्यूआर कोड से जोड़ें को चुनें और दूसरी इमेज में दिखाए गए क्यूआर कोड को स्कैन करें.
    2. अपने डिवाइस को जोड़ने के लिए कोड का इस्तेमाल करने के लिए, वाई-फ़ाई से नए डिवाइस जोड़ें डायलॉग बॉक्स में जाकर, जोड़ने के लिए कोड का इस्तेमाल करके डिवाइस जोड़ें को चुनें. अपने डिवाइस पर, दूसरे डिवाइस से जोड़ने के कोड का इस्तेमाल करके जोड़ें को चुनें. आपको छह अंकों वाला एक कोड दिखेगा. जैसे ही आपका डिवाइस डिवाइसों को वाई-फ़ाई से जोड़ें विंडो में, छह अंक डालें कोड आपके डिवाइस पर दिख रहा है. इसके बाद, जोड़ें को चुनें .
      जोड़ने के कोड डालने के उदाहरण का स्क्रीनशॉट
      चौथी इमेज. छह अंकों वाले जोड़ने के कोड का उदाहरण.
  5. डिवाइस से जोड़ने के बाद, अपने ऐप्लिकेशन को डिवाइस पर डिप्लॉय किया जा सकता है.

किसी दूसरे डिवाइस को जोड़ने या अपने वर्कस्टेशन से इस डिवाइस को हटाने के लिए:

  1. अपने डिवाइस पर, वायरलेस डीबगिंग पर जाएं.
  2. जोड़े गए डिवाइस में जाकर, अपने वर्कस्टेशन के नाम पर टैप करें.
  3. हटाएं को चुनें.

डिवाइस का डुप्लीकेट वर्शन

Android डिवाइस की स्क्रीन पर, चल रहे डिवाइस वाली विंडो में अपने डिवाइस का डुप्लीकेट वर्शन बनाया जा सकता है स्टूडियो. अपने डिवाइस के डिसप्ले को सीधे Android Studio में स्ट्रीम करके, ये काम किए जा सकते हैं सामान्य कार्रवाइयों को लागू करने के लिए, Studio IDE का इस्तेमाल करें. जैसे, ऐप्लिकेशन शुरू करना और उनसे इंटरैक्ट करना, स्क्रीन को घुमाना, फ़ोन को फ़ोल्ड और अनफ़ोल्ड करना, और आवाज़ कम या ज़्यादा कर रही हूँ.

डिवाइस की स्क्रीन को कंप्यूटर पर दिखाने की सुविधा हमेशा तब उपलब्ध होती है, जब कंप्यूटर से ऐसे डिवाइस कनेक्ट हों जिनमें यूएसबी या वायरलेस डीबगिंग की सुविधा चालू हो. चालू डिवाइस विंडो या डिवाइस मैनेजर (व्यू > टूल विंडो > डिवाइस मैनेजर) का इस्तेमाल करके, स्क्रीन शेयर करने की सुविधा को शुरू और बंद किया जा सकता है. डिवाइस की सेटिंग (सेटिंग > टूल > डिवाइस की स्क्रीन शेयर करना) में जाकर, डिवाइस की स्क्रीन शेयर करने की सुविधा को चालू करने का समय भी तय किया जा सकता है.

चल रहे डिवाइसों का यूज़र इंटरफ़ेस (यूआई)

ऑडियो रीडायरेक्ट करना

डिवाइस की स्क्रीन शेयर करने की सुविधा इस्तेमाल करते समय, ऑडियो को कनेक्ट किए गए डिवाइस से रीडायरेक्ट किया जा सकता है अपने कंप्यूटर स्पीकर या हेडफ़ोन पर कर सकते हैं. ऑडियो के साथ रीडायरेक्ट करने के लिए, अपने हेडफ़ोन को कंप्यूटर से कनेक्ट रखें और दोनों को सुनें को मैन्युअल रूप से फिर से कनेक्ट किए बिना, कंप्यूटर और कनेक्ट किए गए फ़ोन को डिवाइस और फिर अन्य डिवाइस. ऑडियो रीडायरेक्ट की सुविधा चालू करने के लिए, फ़ाइल (Android) पर जाएं macOS पर Studio) > सेटिंग > टूल > डिवाइस मिररिंग और चुनें लोकल डिवाइसों से ऑडियो रीडायरेक्ट करना. ध्यान दें कि Android 12 या उससे बाद के वर्शन पर काम करने वाले Firebase टेस्ट लैब डिवाइसों के लिए, सेटिंग के बावजूद ऑडियो हमेशा रीडायरेक्ट किया जाता है.

पहले से मालूम समस्याएं

ऐसा हो सकता है कि कुछ डिवाइसों पर, डिवाइस की स्क्रीन को दूसरे डिवाइस पर दिखाने की सुविधा के लिए ज़रूरी बिटरेट पर एन्कोडिंग न की जा सके. इन स्थितियों में, आपको इसमें गड़बड़ी दिख सकती है: चल रहे डिवाइस विंडो और साथ ही निम्न से मिलते-जुलते लॉग.

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 से कनेक्ट नहीं हो रहा है, तो समस्या को हल करने के लिए यह तरीका आज़माएं:

कनेक्शन असिस्टेंट की मदद से समस्या हल करना

सेट अप करने में मदद करने के लिए, कनेक्शन असिस्टेंट सिलसिलेवार निर्देश देता है और ADB कनेक्शन पर किसी डिवाइस का इस्तेमाल करें.

Assistant शुरू करने के लिए, टूल चुनें > डिवाइस के कनेक्शन से जुड़ी समस्या हल करें.

कनेक्शन असिस्टेंट निर्देश, कॉन्टेक्स्ट के हिसाब से कंट्रोल, और एक सूची देता है कनेक्ट किए गए डिवाइसों की मदद से, Assistant पैनल के पेजों की सीरीज़ में देख सकते हैं. इसका इस्तेमाल करें Assistant पैनल के सबसे नीचे आगे बढ़ें और पीछे जाएं बटन से पेजों पर ज़रूरत के मुताबिक काम करते हैं:

  • अपने डिवाइस को यूएसबी से कनेक्ट करना: कनेक्शन असिस्टेंट सबसे पहले आपसे अपने डिवाइस को यूएसबी से कनेक्ट करने के लिए कहता है. साथ ही, यूएसबी डिवाइसों को फिर से स्कैन करें बटन भी उपलब्ध कराता है. इस बटन की मदद से, कनेक्ट किए गए डिवाइसों के लिए नया स्कैन शुरू किया जा सकता है.
  • यूएसबी डीबग करने की सुविधा चालू करना: इसके बाद, कनेक्शन असिस्टेंट आपको डिवाइस पर मौजूद डेवलपर के विकल्पों में जाकर, यूएसबी डीबग करने की सुविधा चालू करने का तरीका बताता है.
  • ADB सर्वर को रीस्टार्ट करें: अगर आपको अब भी उपलब्ध डिवाइसों की सूची बनाने के लिए, ADB सर्वर को रीस्टार्ट करें बटन का इस्तेमाल करें कनेक्शन असिस्टेंट के आख़िरी पेज पर. ADB सर्वर को रीस्टार्ट करने पर भी, ADB डिवाइसों को फिर से स्कैन करता है. अगर आपको अब भी सूची में अपना डिवाइस नहीं दिख रहा है, तो उपलब्ध डिवाइसों में से हैं, तो नीचे दिए गए सेक्शन में दिए गए समस्या हल करने के चरणों को आज़माएं.

यूएसबी कनेक्शन से जुड़ी समस्याएं हल करना

अगर कनेक्शन असिस्टेंट, यूएसबी के ज़रिए आपके डिवाइस का पता नहीं लगा पाता है, तो समस्या को हल करने के लिए यहां दिया गया तरीका आज़माएं:

यह देखना कि Android Studio, Android Emulator से कनेक्ट हो रहा है या नहीं

यह पता करने के लिए कि समस्या, Android Studio और Android इम्यूलेटर के बीच कनेक्शन से जुड़ी है या नहीं, यह तरीका अपनाएं:

  1. डिवाइस मैनेजर खोलें.
  2. अगर आपने पहले से कोई एवीडी नहीं बनाया है, तो एक नया एवीडी बनाएं एक है.
  3. एवीडी का इस्तेमाल करके, एम्युलेटर चलाएं.
  4. इनमें से कोई एक काम करें:
    • अगर Android Studio, एमुलेटर से कनेक्ट नहीं हो पा रहा है, तो सबसे नया SDK Platform Tools डाउनलोड करें. इसके बाद, फिर से कोशिश करें.
    • अगर एम्युलेटर चालू हो जाता है, तो यूएसबी केबल की जांच करें, जैसा कि नीचे दिए गए सेक्शन में बताया गया है.

यूएसबी केबल की जांच करें

यह देखने के लिए कि समस्या ख़राब यूएसबी केबल की वजह से तो नहीं हो रही है, इस सेक्शन में बताया गया है.

अगर आपके पास कोई दूसरी यूएसबी केबल है, तो:

  1. दूसरी केबल का इस्तेमाल करके डिवाइस को कनेक्ट करें.
  2. देखें कि कनेक्शन असिस्टेंट अब डिवाइस का पता लगा सकती है या नहीं.
  3. अगर डिवाइस का पता नहीं चल पाता है, तो मुख्य केबल को फिर से आज़माएं.
  4. अगर डिवाइस का पता अब भी नहीं चलता है, तो मान लें कि समस्या डिवाइस की है. इसके बाद, अगले सेक्शन में बताए गए तरीके से देखें कि डिवाइस को डेवलपमेंट के लिए सेट अप किया गया है या नहीं.

अगर आपके पास कोई दूसरी यूएसबी केबल नहीं है, लेकिन आपके पास कोई दूसरा Android डिवाइस है, तो:

  1. दूसरे डिवाइस को अपने कंप्यूटर से कनेक्ट करें.
  2. अगर कनेक्शन Assistant, दूसरे डिवाइस का पता लगा सकती है, तो मान लें कि मुख्य डिवाइस में समस्या है और देखें कि डिवाइस को डेवलपमेंट के लिए सेट अप किया गया है या नहीं.

    अगर सेकंडरी डिवाइस नहीं मिला, तो हो सकता है कि यूएसबी में समस्या हो केबल.

यह देखना कि डिवाइस को डेवलपमेंट के लिए सेट अप किया गया है या नहीं

यह पता करने के लिए कि समस्या, डिवाइस की सेटिंग की वजह से आ रही है या नहीं, यह तरीका अपनाएं:

  1. डेवलपमेंट के लिए डिवाइस सेट अप करना लेख में दिया गया तरीका अपनाएं सेक्शन में जाएं.
  2. अगर इससे समस्या हल नहीं होती है, तो डिवाइस के OEM से संपर्क करें मदद के लिए ग्राहक सहायता टीम से संपर्क करें. ग्राहक सहायता प्रतिनिधि को बताएं कि डिवाइस, ADB का इस्तेमाल करके Android Studio से कनेक्ट नहीं हो रहा है.

वायरलेस कनेक्शन की समस्याओं को हल करें

अगर आपको अपने डिवाइस से कनेक्ट करने में समस्या आ रही है, तो समस्या को हल करने के लिए यहां दिया गया तरीका आज़माएं:

देखें कि आपका वर्कस्टेशन और डिवाइस ज़रूरी शर्तें पूरी करते हैं या नहीं

वायरलेस तरीके से डीबग करने की ज़रूरी शर्तें पूरी करने के लिए, पक्का करें कि:

आम तौर पर होने वाली अन्य समस्याओं की जांच करना

Android Studio में वायरलेस डीबगिंग से जुड़ी मौजूदा समस्याओं और उन्हें ठीक करने के तरीकों की सूची यहां दी गई है:

  • वाई-फ़ाई कनेक्ट नहीं हो रहा है: कुछ वाई-फ़ाई नेटवर्क, जैसे कि कॉर्पोरेट वाई-फ़ाई नेटवर्क, पी2पी कनेक्शन को ब्लॉक कर सकते हैं. साथ ही, आपको वाई-फ़ाई से कनेक्ट करने की अनुमति नहीं दे सकते. केबल या किसी दूसरे वाई-फ़ाई नेटवर्क से कनेक्ट करके देखें.
  • वाई-फ़ाई पर ADB कभी-कभी अपने-आप बंद हो जाता है: ऐसा तब हो सकता है, जब डिवाइस या तो वाई-फ़ाई नेटवर्क पर स्विच करता है या नेटवर्क से डिसकनेक्ट हो जाता है.

आरएसए सुरक्षा कुंजी

Android 4.2.2 (एपीआई लेवल 17) या उसके बाद के वर्शन वाले डिवाइस को कंप्यूटर से कनेक्ट करने पर, सिस्टम एक डायलॉग बॉक्स दिखाता है. इसमें यह पूछा जाता है कि क्या आपको इस कंप्यूटर से डिबग करने की अनुमति देने वाली आरएसए कुंजी स्वीकार करनी है. सुरक्षा से जुड़ी यह सुविधा, उपयोगकर्ता के डिवाइसों को सुरक्षित रखती है. ऐसा इसलिए, क्योंकि जब तक डिवाइस को अनलॉक नहीं किया जाता और डॉयलॉग बॉक्स में 'स्वीकार करें' नहीं चुना जाता, तब तक यूएसबी डिबगिंग और adb के अन्य निर्देशों को लागू नहीं किया जा सकता.