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

उपयोगकर्ताओं के लिए रिलीज़ करने से पहले, अपने 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
      

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

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

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

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

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

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

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

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

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

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

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

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

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

डिवाइस की स्क्रीन शेयर करना

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

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

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

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

डिवाइस को दूसरे डिवाइस पर दिखाने की सुविधा का इस्तेमाल करते समय, कनेक्ट किए गए डिवाइसों से ऑडियो को अपने कंप्यूटर के स्पीकर या हेडफ़ोन पर भेजा जा सकता है. ऑडियो रीडायरेक्ट की मदद से, हेडफ़ोन को अपने कंप्यूटर से कनेक्ट रखें. साथ ही, कंप्यूटर और कनेक्ट किए गए फ़ोन, दोनों को सुनें. ऐसा करते समय, आपको एक डिवाइस और फिर दूसरे डिवाइस से मैन्युअल रूप से कनेक्ट करने की ज़रूरत नहीं पड़ेगी. ऑडियो को दूसरे डिवाइस पर भेजने की सुविधा चालू करने के लिए, फ़ाइल (macOS पर Android 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 पैनल में सबसे नीचे मौजूद, आगे बढ़ें और पीछे जाएं बटन का इस्तेमाल करें:

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

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

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

देखें कि Android Studio, Android एमुलेटर से कनेक्ट हो

यह देखने के लिए कि यह समस्या Android Studio और Android Emulator के बीच कनेक्शन की समस्या की वजह से हो रही है या नहीं, यह तरीका अपनाएं:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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