कमांड लाइन से एम्युलेटर शुरू करें

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

इस पेज पर, कमांड-लाइन की उन सुविधाओं के बारे में बताया गया है जिनका इस्तेमाल Android Emulator के साथ किया जा सकता है. Android Emulator के यूज़र इंटरफ़ेस (यूआई) को इस्तेमाल करने के बारे में जानकारी के लिए, Android Emulator पर ऐप्लिकेशन चलाना लेख पढ़ें.

एम्युलेटर शुरू करना

एम्युलेटर शुरू करने के लिए, emulator कमांड का इस्तेमाल करें. इसके अलावा, अपने प्रोजेक्ट को चलाया जा सकता है या AVD मैनेजर के ज़रिए इसे शुरू किया जा सकता है.

टर्मिनल प्रॉम्प्ट से वर्चुअल डिवाइस शुरू करने के लिए, यहां बुनियादी कमांड-लाइन सिंटैक्स दिया गया है:

emulator -avd avd_name [ {-option [value]} … ]

या

emulator @avd_name [ {-option [value]} … ]

उदाहरण के लिए, अगर आपने Mac पर चल रहे Android Studio से एम्युलेटर लॉन्च किया है, तो डिफ़ॉल्ट कमांड लाइन कुछ इस तरह दिखेगी:

/Users/janedoe/Library/Android/sdk/emulator/emulator -avd Pixel8_API_34 -netdelay none -netspeed full -qt-hide-window -grpc-use-token -idle-grpc-timeout 300

कृपया ध्यान दें कि -qt-hide-window -grpc-use-token -idle-grpc-timeout 300 आर्ग्युमेंट का इस्तेमाल सिर्फ़ Android Studio में एम्युलेटर विंडो चलाने के लिए किया जाता है. अगर आपको एम्युलेटर को उसकी विंडो पर चलाना है, तो आपको उन अतिरिक्त पैरामीटर का इस्तेमाल नहीं करना चाहिए.

एम्युलेटर शुरू करते समय, स्टार्टअप के विकल्प तय किए जा सकते हैं. हालांकि, एम्युलेटर शुरू होने के बाद ऐसा नहीं किया जा सकता.

एवीडी के नामों की सूची के लिए, यह कमांड डालें:

emulator -list-avds

इस विकल्प का इस्तेमाल करके, Android की होम डायरेक्ट्री में मौजूद एवीडी के नामों की सूची दिखाई जा सकती है. डिफ़ॉल्ट होम डायरेक्ट्री को बदला जा सकता है. इसके लिए, ANDROID_SDK_HOME एनवायरमेंट वैरिएबल सेट करें. यह वैरिएबल, उपयोगकर्ता के हिसाब से डायरेक्ट्री के रूट के बारे में बताता है. इस डायरेक्ट्री में, सभी कॉन्फ़िगरेशन और एवीडी कॉन्टेंट सेव होता है.

वर्चुअल डिवाइस लॉन्च करने से पहले, टर्मिनल विंडो में एनवायरमेंट वैरिएबल सेट किया जा सकता है. इसके अलावा, ऑपरेटिंग सिस्टम में उपयोगकर्ता सेटिंग के ज़रिए भी इसे सेट किया जा सकता है. उदाहरण के लिए, Linux पर मौजूद आपकी .bashrc फ़ाइल में.

Android Emulator को बंद करने के लिए, एम्युलेटर विंडो बंद करें.

ऐप्स इंस्टॉल करना

Android Studio या एम्युलेटर यूज़र इंटरफ़ेस (यूआई) के ज़रिए ऐप्लिकेशन इंस्टॉल करने के अलावा, adb यूटिलिटी का इस्तेमाल करके भी वर्चुअल डिवाइस पर ऐप्लिकेशन इंस्टॉल किया जा सकता है.

adb का इस्तेमाल करके, अपने ऐप्लिकेशन को इंस्टॉल करने, चलाने, और टेस्ट करने के लिए, यह सामान्य तरीका अपनाएं:

  1. अपना ऐप्लिकेशन बनाएँ और उसे चलाएँ में बताए गए तरीके से, अपने ऐप्लिकेशन को APK में बनाएँ और पैकेज करें.
  2. पिछले सेक्शन में बताए गए तरीके से, कमांड लाइन से एम्युलेटर शुरू करें. इसके लिए, ज़रूरी स्टार्टअप विकल्पों का इस्तेमाल करें.
  3. adb का इस्तेमाल करके, अपना ऐप्लिकेशन इंस्टॉल करें.
  4. एम्युलेटर पर अपने ऐप्लिकेशन को चलाएं और उसकी जांच करें.
    एम्युलेटर के चालू होने पर, ज़रूरत के हिसाब से निर्देश देने के लिए, एम्युलेटर कंसोल का इस्तेमाल किया जा सकता है.

किसी ऐप्लिकेशन को अनइंस्टॉल करने के लिए, उसी तरीके का इस्तेमाल करें जो Android डिवाइस पर किया जाता है.

वर्चुअल डिवाइस, ऐप्लिकेशन और उसके स्टेटस डेटा को रीस्टार्ट करने पर भी सुरक्षित रखता है. यह डेटा, उपयोगकर्ता के डेटा डिस्क पार्टीशन (userdata-qemu.img) में सेव होता है. इस डेटा को मिटाने के लिए, -wipe-data विकल्प के साथ एम्युलेटर शुरू करें या एवीडी मैनेजर में मौजूद डेटा मिटाएं. उपयोगकर्ता के डेटा के पार्टीशन और अन्य स्टोरेज के बारे में ज़्यादा जानने के लिए, यहां दिया गया सेक्शन देखें.

ध्यान दें: adb यूटिलिटी, वर्चुअल डिवाइस को एक फ़िज़िकल डिवाइस के तौर पर देखती है. इस वजह से, आपको कुछ सामान्य adb कमांड के साथ -d फ़्लैग का इस्तेमाल करना पड़ सकता है. जैसे, install. -d फ़्लैग की मदद से, यह तय किया जा सकता है कि कमांड के लिए, कनेक्ट किए गए कई डिवाइसों में से किस डिवाइस का इस्तेमाल किया जाए. अगर आपने -d तय नहीं किया है, तो एम्युलेटर अपनी सूची में मौजूद पहले डिवाइस को टारगेट करता है.

डिफ़ॉल्ट डायरेक्ट्री और फ़ाइलों के बारे में जानकारी

एम्युलेटर, उससे जुड़ी फ़ाइलों का इस्तेमाल करता है. इनमें एवीडी सिस्टम और डेटा डायरेक्ट्री सबसे अहम होती हैं. कमांड-लाइन के विकल्प तय करते समय, एम्युलेटर डायरेक्ट्री स्ट्रक्चर और फ़ाइलों के बारे में जानना मददगार होता है. हालांकि, आम तौर पर आपको डिफ़ॉल्ट डायरेक्ट्री या फ़ाइलों में बदलाव करने की ज़रूरत नहीं होती.

Android Emulator, (QEMU) हाइपरवाइज़र का इस्तेमाल करता है.

AVD सिस्टम डायरेक्ट्री

सिस्टम डायरेक्ट्री में Android सिस्टम इमेज होती हैं. इनका इस्तेमाल, ऑपरेटिंग सिस्टम को सिम्युलेट करने के लिए एम्युलेटर करता है. इस डायरेक्ट्री में, प्लैटफ़ॉर्म के हिसाब से सिर्फ़ पढ़ने के लिए उपलब्ध फ़ाइलें होती हैं. इन्हें एक ही तरह के सभी एवीडी के साथ शेयर किया जाता है. इनमें एपीआई लेवल, सीपीयू आर्किटेक्चर, और Android वर्शन शामिल हैं. डिफ़ॉल्ट तौर पर, ये जगहें होती हैं:

  • macOS और Linux - ~/Library/Android/sdk/system-images/android-apiLevel/variant/arch/
  • Windows - C:\Users\user\Library\Android\sdk\system-images\android-apiLevel\variant\arch\\

जगह:

  • apiLevel, एपीआई लेवल की संख्या या प्रीव्यू रिलीज़ के लिए अक्षर है. उदाहरण के लिए, android-V से Android VanillaIceCream की झलक का पता चलता है. रिलीज़ होने पर, यह एपीआई लेवल 35 बन गया. इसे android-35 के तौर पर दिखाया गया है.
  • variant, सिस्टम इमेज में लागू की गई खास सुविधाओं का नाम है. उदाहरण के लिए, google_apis या android-wear.
  • arch टारगेट सीपीयू आर्किटेक्चर है. उदाहरण के लिए, x86.

AVD के लिए किसी दूसरी सिस्टम डायरेक्ट्री के बारे में बताने के लिए, -sysdir विकल्प का इस्तेमाल करें.

इमुलेटर, सिस्टम डायरेक्ट्री से इन फ़ाइलों को पढ़ता है:

पहली टेबल. सिस्टम डायरेक्ट्री की फ़ाइलें, जिन्हें Android Emulator पढ़ता है

फ़ाइल ब्यौरा कोई दूसरी फ़ाइल तय करने का विकल्प
kernel-qemu या kernel-ranchu AVD के लिए बाइनरी कर्नेल इमेज. kernel-ranchu, QEMU एम्युलेटर पर आधारित है. -kernel
ramdisk.img बूट पार्टीशन की इमेज. यह system.img का सबसेट है. इसे सिस्टम इमेज के माउंट होने से पहले, कर्नल लोड करता है. इसमें आम तौर पर, कुछ बाइनरी और इनिशियलाइज़ेशन स्क्रिप्ट होती हैं. -ramdisk
system.img सिस्टम इमेज का शुरुआती वर्शन, जिसे सिर्फ़ देखा जा सकता है. खास तौर पर, सिस्टम लाइब्रेरी और एपीआई लेवल और वैरिएंट से जुड़ा डेटा रखने वाला पार्टीशन. -system
userdata.img डेटा पार्टिशन का शुरुआती वर्शन, जो एम्युलेट किए गए सिस्टम में data/ के तौर पर दिखता है. इसमें एवीडी के लिए, लिखने लायक सभी डेटा शामिल होते हैं. जब नया AVD बनाया जाता है या ‑wipe-data विकल्प का इस्तेमाल किया जाता है, तब एम्युलेटर इस फ़ाइल का इस्तेमाल करता है. ज़्यादा जानकारी के लिए, यहां दिए गए सेक्शन में userdata-qemu.img फ़ाइल का ब्यौरा देखें. -initdata
-init-data

एवीडी डेटा डायरेक्ट्री

एवीडी डेटा डायरेक्ट्री को कॉन्टेंट डायरेक्ट्री भी कहा जाता है. यह किसी एक एवीडी इंस्टेंस के लिए होती है. इसमें एवीडी के लिए, बदलाव किया जा सकने वाला सारा डेटा होता है.

डिफ़ॉल्ट जगह यह है, जहां name, एवीडी का नाम है:

  • macOS और Linux - ~/.android/avd/name.avd/
  • Windows 10 और इसके बाद के वर्शन - C:\Users\user\.android\name.avd\\

किसी अन्य एवीडी डेटा डायरेक्ट्री को सेट करने के लिए, -datadir विकल्प का इस्तेमाल करें.

यहां दी गई टेबल में, इस डायरेक्ट्री में मौजूद सबसे ज़रूरी फ़ाइलों की सूची दी गई है:

टेबल 2. AVD की डेटा डायरेक्ट्री में मौजूद ज़रूरी फ़ाइलें

फ़ाइल ब्यौरा कोई दूसरी फ़ाइल तय करने का विकल्प
userdata-qemu.img

डेटा पार्टीशन का कॉन्टेंट, जो एम्युलेट किए गए सिस्टम में data/ के तौर पर दिखता है. नया AVD बनाने पर या AVD को फ़ैक्ट्री डिफ़ॉल्ट सेटिंग पर रीसेट करने के लिए -wipe-data विकल्प का इस्तेमाल करने पर, एम्युलेटर इस फ़ाइल को बनाने के लिए, सिस्टम डायरेक्ट्री में मौजूद userdata.img फ़ाइल को कॉपी करता है.

हर वर्चुअल डिवाइस इंस्टेंस, उपयोगकर्ता और सेशन से जुड़ा डेटा सेव करने के लिए, उपयोगकर्ता के डेटा की इमेज का इस्तेमाल करता है. उदाहरण के लिए, यह इमेज का इस्तेमाल करके, किसी उपयोगकर्ता के इंस्टॉल किए गए ऐप्लिकेशन का डेटा, सेटिंग, डेटाबेस, और फ़ाइलें सेव करती है. हर उपयोगकर्ता के पास अलग ANDROID_SDK_HOME डायरेक्ट्री होती है. इसमें उस उपयोगकर्ता के बनाए गए एवीडी के लिए डेटा डायरेक्ट्री सेव होती हैं. हर एवीडी में एक userdata-qemu.img फ़ाइल होती है.

-data
cache.img कैश पार्टीशन इमेज, जो एम्युलेट किए गए सिस्टम में cache/ के तौर पर दिखती है. पहली बार एवीडी बनाने या -wipe-data विकल्प का इस्तेमाल करने पर, यह फ़ील्ड खाली होता है. यह कुकी, डाउनलोड की गई अस्थायी फ़ाइलों को सेव करती है. इसे डाउनलोड मैनेजर और कभी-कभी सिस्टम भरता है. उदाहरण के लिए, ब्राउज़र इसका इस्तेमाल डाउनलोड किए गए वेब पेजों और इमेज को कैश मेमोरी में सेव करने के लिए करता है. ऐसा तब होता है, जब एम्युलेटर चल रहा हो. वर्चुअल डिवाइस को बंद करने पर, फ़ाइल मिट जाती है. -cache विकल्प का इस्तेमाल करके, फ़ाइल को सेव किया जा सकता है. -cache
sdcard.img

(ज़रूरी नहीं) एसडी कार्ड के पार्टीशन की इमेज. इससे वर्चुअल डिवाइस पर एसडी कार्ड को सिम्युलेट किया जा सकता है. AVD मैनेजर में या mksdcard टूल का इस्तेमाल करके, एसडी कार्ड की इमेज फ़ाइल बनाई जा सकती है. यह फ़ाइल आपके डेवलपमेंट कंप्यूटर पर सेव होती है और इसे स्टार्टअप के समय लोड करना ज़रूरी है.

AVD Manager में AVD तय करते समय, आपके पास अपने-आप मैनेज होने वाली एसडी कार्ड फ़ाइल या mksdcard टूल से बनाई गई फ़ाइल का इस्तेमाल करने का विकल्प होता है. AVD मैनेजर में जाकर, किसी AVD से जुड़ी sdcard.img फ़ाइल देखी जा सकती है. -sdcard विकल्प, AVD में बताई गई एसडी कार्ड फ़ाइल को बदल देता है. ध्यान दें कि एसडी कार्ड का यह विकल्प, Apple सिलिकॉन वाले Mac पर काम नहीं करेगा.

वर्चुअल डिवाइस के चालू होने पर, एम्युलेटर यूज़र इंटरफ़ेस (यूआई) या adb यूटिलिटी का इस्तेमाल करके, सिम्युलेट किए गए एसडी कार्ड को ब्राउज़ किया जा सकता है. साथ ही, इस पर फ़ाइलें भेजी जा सकती हैं. इसके अलावा, इस पर मौजूद फ़ाइलों को कॉपी और हटाया जा सकता है. चल रहे वर्चुअल डिवाइस से, सिम्युलेट किए गए एसडी कार्ड को नहीं हटाया जा सकता.

एसडी कार्ड फ़ाइल में फ़ाइलें कॉपी करने के लिए, इमेज फ़ाइल को लूप डिवाइस के तौर पर माउंट करें. इसके बाद, फ़ाइलें कॉपी करें. इसके अलावा, फ़ाइलों को सीधे इमेज में कॉपी करने के लिए, mtools पैकेज जैसे किसी यूटिलिटी का इस्तेमाल करें.

एम्युलेटर, फ़ाइल को बाइट के पूल के तौर पर इस्तेमाल करता है. इसलिए, एसडी कार्ड का फ़ॉर्मैट मायने नहीं रखता.

-wipe-data विकल्प से इस फ़ाइल पर कोई असर नहीं पड़ता. अगर आपको फ़ाइल मिटानी है, तो उसे मिटाएं. इसके बाद, AVD Manager या mksdcard टूल का इस्तेमाल करके, उसे फिर से बनाएं. फ़ाइल का साइज़ बदलने पर, फ़ाइल मिट जाती है और एक नई फ़ाइल बन जाती है.

-sdcard

एम्युलेटर के लिए इस्तेमाल की गई डायरेक्ट्री और फ़ाइलों की सूची

फ़ाइलों की जगह का पता लगाने के दो तरीके हैं:

  • कमांड लाइन से एम्युलेटर शुरू करते समय, -verbose या -debug init विकल्प का इस्तेमाल करें. आउटपुट देखें.
  • डिफ़ॉल्ट डायरेक्ट्री की सूची बनाने के लिए, emulator -help-option कमांड का इस्तेमाल करें. उदाहरण के लिए:
    emulator -help-datadir
    Use '-datadir <dir>' to specify a directory where writable image files will be searched. On this system, the default directory is: /Users/me/.android See '-help-disk-images' for more information about disk image files.

कमांड-लाइन से शुरू करने के विकल्प

इस सेक्शन में, उन विकल्पों की सूची दी गई है जिन्हें एम्युलेटर शुरू करते समय कमांड लाइन पर दिया जा सकता है.

ध्यान दें: Android Emulator को लगातार बेहतर बनाया जा रहा है, ताकि यह ज़्यादा भरोसेमंद हो. अलग-अलग कमांड-लाइन विकल्पों के ख़िलाफ़ की गई समस्याओं की शिकायत का स्टेटस देखने और बग की शिकायत करने के लिए, Android Issue Tracker देखें.

आम तौर पर इस्तेमाल किए जाने वाले विकल्प

यहां दी गई टेबल में, कमांड-लाइन स्टार्टअप के उन विकल्पों की सूची दी गई है जिनका इस्तेमाल अक्सर किया जाता है:

तीसरी टेबल. कमांड-लाइन के लिए अक्सर इस्तेमाल किए जाने वाले विकल्प

कमांड-लाइन विकल्प ब्यौरा
क्विक बूट
-no-snapshot-load यह कोल्ड बूट करता है और बंद होने पर, एम्युलेटर की स्थिति को सेव करता है.
-no-snapshot-save अगर हो सके, तो यह विकल्प तेज़ी से बूट करता है. हालांकि, इससे एम्युलेटर की स्थिति सेव नहीं होती है.
-no-snapshot यह क्विक बूट की सुविधा को पूरी तरह से बंद कर देता है. साथ ही, यह एम्युलेटर की स्थिति को लोड या सेव नहीं करता है.
डिवाइस हार्डवेयर
-camera-back mode
-camera-front mode

यह पीछे या सामने की ओर लगे कैमरे के लिए, इम्यूलेशन मोड सेट करता है. यह AVD में मौजूद किसी भी कैमरा सेटिंग को बदल देता है.

mode इनमें से कोई भी वैल्यू हो सकती है:

  • emulated - यह एम्युलेटर, सॉफ़्टवेयर में कैमरे की तरह काम करता है.
  • environment - एम्युलेटर, AVD की एनवायरमेंट कॉन्फ़िगरेशन फ़ाइल में तय किए गए वर्चुअल सीन का इस्तेमाल करता है.
  • webcamn - यह एम्युलेटर, आपके डेवलपमेंट कंप्यूटर से कनेक्ट किए गए वेबकैम का इस्तेमाल करता है. इसे नंबर के हिसाब से तय किया जाता है. वेबकैम की सूची देखने के लिए, -webcam-list विकल्प का इस्तेमाल करें. उदाहरण के लिए, webcam0.
  • imagefile:filename - एम्युलेटर, कैमरा आउटपुट के लिए इमेज फ़ाइल का इस्तेमाल करता है.
  • videofile:filename - एम्युलेटर, कैमरा आउटपुट के लिए वीडियो का इस्तेमाल करता है.
  • image360:filename - एम्युलेटर, कैमरे के आउटपुट के लिए इक्विरैक्टैंगुलर पैनोरमिक इमेज का इस्तेमाल करता है. यह सुविधा, 36.6.4 और इसके बाद के वर्शन में उपलब्ध है.
  • none - इससे वर्चुअल डिवाइस में कैमरा बंद हो जाता है.

उदाहरण के लिए:

emulator @Pixel8_API_34 -camera-back webcam0
-webcam-list यह आपके डेवलपमेंट कंप्यूटर पर मौजूद उन वेबकैम की सूची दिखाता है जिनका इस्तेमाल इम्यूलेशन के लिए किया जा सकता है. उदाहरण के लिए:
emulator @Pixel8_API_34 -webcam-list
        List of web cameras connected to the computer:
        Camera 'webcam0' is connected to device 'webcam0'
        on channel 0 using pixel format 'UYVY'

उदाहरण में, पहला webcam0 वह नाम है जिसका इस्तेमाल कमांड लाइन पर किया जाता है. दूसरा webcam0, डेवलपमेंट कंप्यूटर पर ओएस के इस्तेमाल किया गया नाम है. दूसरा नाम, ओएस के हिसाब से अलग-अलग होता है.

एसडीके टूल 25.2.4 के बाद से, AVD का नाम डालना ज़रूरी है.

डिस्क इमेज और मेमोरी
-memory size

इससे फ़िज़िकल रैम का साइज़ तय होता है. यह 1536 से 8192 एमबी तक हो सकता है. उदाहरण के लिए:

emulator @Pixel8_API_34 -memory 2048

यह वैल्यू, एवीडी सेटिंग को ओवरराइड करती है.

-sdcard filepath

यह एसडी कार्ड के पार्टीशन की इमेज फ़ाइल का नाम और पाथ तय करता है. उदाहरण के लिए:

emulator @Pixel8_API_34 -sdcard C:/sd/sdcard.img

अगर फ़ाइल नहीं मिलती है, तो भी एम्युलेटर लॉन्च हो जाता है. हालांकि, इसमें एसडी कार्ड नहीं होता है. इस निर्देश से, एसडी कार्ड की इमेज नहीं है वाली चेतावनी मिलती है.

अगर आपने इस विकल्प के बारे में नहीं बताया है, तो डेटा डायरेक्ट्री में डिफ़ॉल्ट रूप से sdcard.img होता है. हालांकि, अगर एवीडी में कोई अलग विकल्प बताया गया है, तो उसे डिफ़ॉल्ट माना जाएगा. इमुलेट किए गए एसडी कार्ड के बारे में ज़्यादा जानने के लिए, AVD डेटा डायरेक्ट्री देखें.

-wipe-data

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

emulator @Pixel8_API_34 -wipe-data

डिफ़ॉल्ट रूप से, उपयोगकर्ता का डेटा फ़ाइल userdata-qemu.img होती है और शुरुआती डेटा फ़ाइल userdata.img होती है. ये दोनों फ़ाइलें, डेटा डायरेक्ट्री में मौजूद होती हैं. -wipe-data विकल्प से sdcard.img फ़ाइल पर कोई असर नहीं पड़ता. उपयोगकर्ता के डेटा के बारे में ज़्यादा जानने के लिए, डिफ़ॉल्ट डायरेक्ट्री और फ़ाइलों के बारे में जानकारी सेक्शन देखें.

डीबग करें
-debug tags

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

$ emulator @Pixel8_API_34 -debug init,metrics

किसी टैग को बंद करने के लिए, उसके सामने डैश (-) लगाएं. उदाहरण के लिए, यहां दिया गया विकल्प, नेटवर्क सॉकेट और मेट्रिक से जुड़े मैसेज को छोड़कर, सभी डीबग मैसेज दिखाता है:

-debug all,-socket,-metrics

टैग और ब्यौरे की सूची देखने के लिए, -help-debug-tags विकल्प का इस्तेमाल करें. उदाहरण के लिए:

emulator -help-debug-tags

ANDROID_VERBOSE एनवायरमेंट वैरिएबल में, डिफ़ॉल्ट डीबग टैग तय किए जा सकते हैं. कॉमा लगाकर अलग की गई सूची में, उन टैग को तय करें जिनका आपको इस्तेमाल करना है. यहां एक उदाहरण दिया गया है, जिसमें socket और gles टैग के बारे में बताने का तरीका दिखाया गया है:

ANDROID_VERBOSE=socket,gles

यह इस तरह के फ़ॉर्मूले का इस्तेमाल करने जैसा है:

-debug-socket -debug-gles

या

-debug socket,gles

-debug-tag
-debug-no-tag

इस विकल्प की मदद से, डीबग मैसेज के किसी खास टाइप को चालू किया जा सकता है. किसी डीबग मैसेज टाइप को बंद करने के लिए, no फ़ॉर्म का इस्तेमाल करें. उदाहरण के लिए:

emulator @Pixel8_API_34 -debug-all -debug-no-metrics

टैग की सूची देखने के लिए, emulator -help-debug-tags कमांड का इस्तेमाल करें.

-logcat logtags

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

emulator @Pixel8_API_34 -logcat *:e

logtags, adb logcat logtags कमांड के फ़ॉर्मैट का इस्तेमाल करता है. ज़्यादा जानकारी के लिए, adb logcat -help डालें. यह componentName:logLevel फ़ॉर्मैट में, स्पेस या कॉमा लगाकर अलग किए गए लॉग फ़िल्टर की सूची है. componentName वाइल्डकार्ड ऐस्टरिक (*) या कॉम्पोनेंट का नाम होता है. जैसे, ActivityManager, SystemServer, InputManager, या WindowManager.

logLevel इनमें से कोई एक वैल्यू है:

  • v - वर्बोस
  • d - डीबग
  • i - जानकारी देने वाला
  • w - चेतावनी लॉग लेवल
  • e - गड़बड़ी
  • s - साइलेंट

नीचे दिए गए उदाहरण में, सूचना देने वाले लॉग लेवल पर जीएसएम कॉम्पोनेंट के मैसेज दिखाए गए हैं:

emulator @Pixel8_API_34 -logcat '*:s GSM:i'

अगर कमांड लाइन पर -logcat विकल्प नहीं दिया जाता है, तो एम्युलेटर ANDROID_LOG_TAGS एनवायरमेंट वैरिएबल को खोजता है. अगर ANDROID_LOG_TAGS को मान्य logtags वैल्यू के साथ तय किया गया है और यह खाली नहीं है, तो एम्युलेटर इसकी वैल्यू का इस्तेमाल करता है. इससे, Logcat आउटपुट को डिफ़ॉल्ट रूप से टर्मिनल पर चालू किया जा सकता है. adb की मदद से, एक ही या अन्य लॉग मैसेज को टर्मिनल पर रीडायरेक्ट किया जा सकता है.

Logcat और adb के बारे में ज़्यादा जानने के लिए, Logcat कमांड-लाइन टूल, Logcat की मदद से लॉग देखना और लिखना, Log क्लास, और adb कमांड जारी करना लेख पढ़ें.

-show-kernel

टर्मिनल विंडो में कर्नल डीबग मैसेज दिखाता है. उदाहरण के लिए:

emulator @Pixel8_API_34 -show-kernel

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

-verbose

यह विकल्प, टर्मिनल विंडो में एम्युलेटर के शुरू होने के मैसेज प्रिंट करता है. उदाहरण के लिए:

emulator @Pixel8_API_34 -verbose

इससे यह पता चलता है कि एवीडी में तय किए गए वर्चुअल डिवाइस को शुरू करते समय, कौनसी फ़ाइलें और सेटिंग चुनी गई हैं. यह विकल्प, -debug-init को तय करने जैसा ही है.

नेटवर्क
-dns-server servers

यह विकल्प, तय किए गए डीएनएस सर्वर का इस्तेमाल करता है. servers, कॉमा लगाकर अलग किए गए ज़्यादा से ज़्यादा चार डीएनएस सर्वर के नामों या आईपी पतों की सूची है. उदाहरण के लिए:

emulator @Pixel8_API_34 -dns-server 192.0.2.0,
192.0.2.255

डिफ़ॉल्ट रूप से, एम्युलेटर उन डीएनएस सर्वर का पता लगाने की कोशिश करता है जिनका इस्तेमाल किया जा रहा है. साथ ही, यह एम्युलेट किए गए फ़ायरवॉल नेटवर्क में खास उपनाम सेट अप करता है, ताकि Android सिस्टम सीधे सर्वर से कनेक्ट हो सके. डीएनएस सर्वर की कोई दूसरी सूची तय करने के लिए, -dns-server विकल्प का इस्तेमाल करें.

-http-proxy proxy

यह विकल्प, तय की गई एचटीटीपी/एचटीटीपीएस प्रॉक्सी के ज़रिए सभी टीसीपी कनेक्शन बनाता है. अगर आपके एम्युलेटर को प्रॉक्सी सर्वर के ज़रिए इंटरनेट ऐक्सेस करना है, तो इस विकल्प या http_proxy एनवायरमेंट वैरिएबल का इस्तेमाल करके, सही रीडायरेक्शन सेट अप किया जा सकता है. उदाहरण के लिए:

emulator @Pixel8_API_34 -http-proxy myserver:1981

proxy इनमें से कोई एक हो सकता है:

http://server:port
http://username:password@server:port

http:// प्रीफ़िक्स को हटाया जा सकता है.

अगर यह विकल्प नहीं दिया जाता है, तो एम्युलेटर http_proxy एनवायरमेंट वैरिएबल को खोजता है और proxy फ़ॉर्मैट से मेल खाने वाली किसी भी वैल्यू का अपने-आप इस्तेमाल करता है. ज़्यादा जानकारी के लिए, प्रॉक्सी के साथ एम्युलेटर का इस्तेमाल करना लेख पढ़ें.

ध्यान दें: एक से ज़्यादा एम्युलेटर चलाने पर, इस फ़्लैग को पहली बार लॉन्च करने पर सेट किया जाना चाहिए.

-netdelay delay

यह कुकी, नेटवर्क की लेटेन्सी को मिलीसेकंड में इनमें से किसी एक delay वैल्यू पर सेट करती है:

  • gsm - GSM/CSD (कम से कम 150, ज़्यादा से ज़्यादा 550).
  • hscsd - एचएससीएसडी (कम से कम 80, ज़्यादा से ज़्यादा 400).
  • gprs - GPRS (कम से कम 35, ज़्यादा से ज़्यादा 200).
  • edge - EDGE/EGPRS (कम से कम 80, ज़्यादा से ज़्यादा 400).
  • umts - UMTS/3G (कम से कम 35, ज़्यादा से ज़्यादा 200).
  • hsdpa - HSDPA (कम से कम 0, ज़्यादा से ज़्यादा 0).
  • lte - एलटीई (कम से कम 0, ज़्यादा से ज़्यादा 0).
  • evdo - EVDO (कम से कम 0, ज़्यादा से ज़्यादा 0).
  • none - कोई इंतज़ार का समय नहीं, डिफ़ॉल्ट (कम से कम 0, ज़्यादा से ज़्यादा 0).
  • num - इससे सटीक लेटेन्सी का पता चलता है.
  • min:max - इससे हर एक के लिए, कम से कम और ज़्यादा से ज़्यादा समय की जानकारी मिलती है.

उदाहरण के लिए:

emulator @Pixel8_API_34 -netdelay gsm

एम्युलेटर, नेटवर्क थ्रॉटलिंग के साथ-साथ कनेक्शन की ज़्यादा लेटेंसी को भी सपोर्ट करता है. इसे स्किन कॉन्फ़िगरेशन या ‑netspeed और -netdelay विकल्पों की मदद से तय किया जा सकता है.

ध्यान दें: यह सेटिंग, इथरनेट और सेल्युलर पर लागू होती है.

-netfast

नेटवर्क थ्रॉटलिंग की सुविधा बंद करता है. उदाहरण के लिए:

emulator @Pixel8_API_34 -netfast

यह विकल्प, -netspeed full -netdelay none को तय करने जैसा ही है. इन विकल्पों के लिए, ये डिफ़ॉल्ट वैल्यू हैं.

ध्यान दें: यह सेटिंग, इथरनेट और सेल्युलर पर लागू होती है.

-netspeed speed

इससे नेटवर्क की स्पीड का इम्यूलेशन सेट किया जाता है. इस एट्रिब्यूट की वैल्यू के तौर पर, इनमें से कोई एक speed वैल्यू केबीपीएस में दी जाती है. इससे नेटवर्क पर अपलोड और डाउनलोड करने की ज़्यादा से ज़्यादा स्पीड के बारे में पता चलता है:

  • gsm - जीएसएम/सीएसडी (अप: 14.4, डाउन: 14.4).
  • hscsd - एचएससीएसडी (अप: 14.4, डाउन: 57.6).
  • gprs - GPRS (अपलोड करने की स्पीड: 28.8, डाउनलोड करने की स्पीड: 57.6).
  • edge - EDGE/EGPRS (अपलोड: 473.6, डाउनलोड: 473.6).
  • umts - यूएमटीएस/3G (अपलोड: 384.0, डाउनलोड: 384.0).
  • hsdpa - एचएसडीपीए (अप: 5760.0, डाउन: 13,980.0).
  • lte - एलटीई (अप: 58,000, डाउन: 173,000).
  • evdo - EVDO (अपलोड: 75,000, डाउनलोड: 2,80,000).
  • full - कोई सीमा नहीं, डिफ़ॉल्ट (बढ़ोतरी: 0.0, गिरावट: 0.0).
  • num - इससे अपलोड और डाउनलोड, दोनों की स्पीड के बारे में पता चलता है.
  • up:down - इससे ऊपर और नीचे की अलग-अलग स्पीड के बारे में पता चलता है.

उदाहरण के लिए:

emulator @Pixel8_API_34 -netspeed edge

एम्युलेटर, नेटवर्क थ्रॉटलिंग के साथ-साथ कनेक्शन की ज़्यादा लेटेंसी को भी सपोर्ट करता है. इसे स्किन कॉन्फ़िगरेशन या ‑netspeed और -netdelay विकल्पों की मदद से तय किया जा सकता है.

ध्यान दें: यह सेटिंग, इथरनेट और सेल्युलर पर लागू होती है.

-netsim-args arguments

नेटवर्क सिम्युलेटर (netsim) को अतिरिक्त आर्ग्युमेंट पास करता है. arguments स्पेस से अलग की गई फ़्लैग की सूची है.

उदाहरण के लिए, पैकेट कैप्चर करने की सुविधा चालू करने और stderr पर लॉगिंग को रीडायरेक्ट करने के लिए:

emulator @Pixel8_API_34 -netsim-args="--pcap --logtostderr"

ज़्यादा जानकारी के लिए, एम्युलेटर की ऐडवांस नेटवर्किंग सुविधाएं देखें.

-port port

यह विकल्प, कंसोल और adb के लिए इस्तेमाल किए जाने वाले टीसीपी पोर्ट नंबर को सेट करता है. उदाहरण के लिए:

emulator @Pixel8_API_34 -port 5556

आपकी मशीन पर चल रहे पहले वर्चुअल डिवाइस इंस्टेंस के लिए, डिफ़ॉल्ट वैल्यू 5554 होती है. वर्चुअल डिवाइस आम तौर पर, आस-पास के दो पोर्ट का इस्तेमाल करता है: कंसोल पोर्ट और adb पोर्ट. किसी मशीन पर चल रहे पहले वर्चुअल डिवाइस का कंसोल, कंसोल पोर्ट 5554 और adb पोर्ट 5555 का इस्तेमाल करता है. इसके बाद के इंस्टेंस, दो से बढ़ते हुए पोर्ट नंबर का इस्तेमाल करते हैं. उदाहरण के लिए, 5556/5557, 5558/5559 वगैरह. यह रेंज 5554 से 5682 तक होती है. इससे एक साथ 64 वर्चुअल डिवाइसों का इस्तेमाल किया जा सकता है.

पोर्ट असाइनमेंट अक्सर -ports port,{port + 1} के तौर पर तय किए जाते हैं. {port + 1} मुफ़्त होना चाहिए और इसे adb के लिए रिज़र्व किया गया हो. अगर कंसोल या adb पोर्ट में से किसी का इस्तेमाल पहले से किया जा रहा है, तो एम्युलेटर शुरू नहीं होगा.

‑port विकल्प से यह पता चलता है कि वर्चुअल डिवाइस कौनसे पोर्ट और सीरियल नंबर का इस्तेमाल कर रहा है. साथ ही, अगर आपकी दी गई वैल्यू में कोई समस्या है, तो यह विकल्प आपको इसकी सूचना देता है. एम्युलेटर के यूज़र इंटरफ़ेस (यूआई) में, विंडो के टाइटल में कंसोल पोर्ट नंबर देखा जा सकता है. साथ ही, सहायता > इसके बारे में को चुनकर, adb पोर्ट नंबर देखा जा सकता है.

ध्यान दें कि अगर port की वैल्यू सम नहीं है और 5554 से 5584 के बीच है, तो वर्चुअल डिवाइस शुरू हो जाएगा. हालांकि, adb devices कमांड का इस्तेमाल करने पर यह नहीं दिखेगा. ऐसा तब होगा, जब adb server, एम्युलेटर के बाद शुरू होता है. इसलिए, हमारा सुझाव है कि आप सम संख्या वाले कंसोल पोर्ट नंबर का इस्तेमाल करें.

-ports
console-port,adb-port

यह नीति, कंसोल और adb के लिए इस्तेमाल किए जाने वाले टीसीपी पोर्ट सेट करती है. उदाहरण के लिए:

emulator @Pixel8_API_34 -ports 5556,5559

मान्य पोर्ट की रेंज 5554 से 5682 तक है. इससे 64 वर्चुअल डिवाइस एक साथ इस्तेमाल किए जा सकते हैं. -ports विकल्प से यह पता चलता है कि एम्युलेटर इंस्टेंस किन पोर्ट और सीरियल नंबर का इस्तेमाल कर रहा है. साथ ही, अगर आपकी दी गई वैल्यू में कोई समस्या है, तो यह विकल्प आपको इसकी सूचना देता है.

हमारा सुझाव है कि जहां मुमकिन हो वहां -port विकल्प का इस्तेमाल करें. -ports विकल्प, उन नेटवर्क कॉन्फ़िगरेशन के लिए उपलब्ध है जिनके लिए खास सेटिंग की ज़रूरत होती है.

कंसोल और adb पोर्ट सेट करने के बारे में ज़्यादा जानने के लिए, -port विकल्प देखें.

-tcpdump filepath

यह नेटवर्क पैकेट कैप्चर करता है और उन्हें किसी फ़ाइल में सेव करता है. उदाहरण के लिए:

emulator @Pixel8_API_34 -tcpdump /path/dumpfile.cap

इस विकल्प का इस्तेमाल करके, एम्युलेटर के वर्चुअल इथरनेट लैन के ज़रिए भेजे गए सभी नेटवर्क पैकेट कैप्चर किए जा सकते हैं. इसके बाद, ट्रैफ़िक का विश्लेषण करने के लिए, Wireshark जैसे टूल का इस्तेमाल किया जा सकता है.

ध्यान दें कि यह विकल्प सभी इथरनेट पैकेट कैप्चर करता है. यह सिर्फ़ टीसीपी कनेक्शन तक सीमित नहीं है.

सिस्टम
-accel mode

यह सेटिंग, एम्युलेटर वीएम की स्पीड बढ़ाने की सुविधा को कॉन्फ़िगर करती है. उदाहरण के लिए:

emulator @Pixel8_API_34 -accel auto

ऐक्सलरेटेड इम्यूलेशन, सिर्फ़ x86 और x86_64 सिस्टम इमेज के लिए काम करता है. Linux पर, यह KVM पर निर्भर करता है. Windows और Mac पर, यह Intel CPU और Intel HAXM ड्राइवर पर निर्भर करता है. अगर x86 या x86_64 डिवाइस का इस्तेमाल नहीं किया जा रहा है, तो इस विकल्प को अनदेखा कर दिया जाता है.

mode एट्रिब्यूट के लिए मान्य वैल्यू ये हैं:

  • auto - यह अपने-आप तय करता है कि हार्डवेयर से तेज़ी लाने की सुविधा काम करती है या नहीं. अगर यह सुविधा काम करती है, तो इसका इस्तेमाल किया जाता है (डिफ़ॉल्ट).
  • off - इससे ऐक्सेलरेटेड रेंडरिंग की सुविधा पूरी तरह से बंद हो जाती है. यह मुख्य रूप से डीबग करने के लिए काम आती है.
  • on - इससे ऐक्सेलरेटर को चालू किया जाता है. अगर KVM या HAXM इंस्टॉल नहीं है या इसका इस्तेमाल नहीं किया जा सकता, तो एम्युलेटर शुरू नहीं होगा और गड़बड़ी का मैसेज दिखेगा.

ज़्यादा जानकारी के लिए, Android Emulator के लिए हार्डवेयर ऐक्सेलरेटेड रेंडरिंग कॉन्फ़िगर करना लेख पढ़ें.

-accel-check

यह जांच करता है कि एमुलेटर वीएम ऐक्सेलरेट करने के लिए ज़रूरी हाइपरवाइज़र (HAXM या KVM) इंस्टॉल है या नहीं. उदाहरण के लिए:

emulator -accel-check

ज़्यादा जानकारी के लिए, यह देखना कि हाइपरवाइज़र इंस्टॉल है या नहीं लेख पढ़ें.

-engine engine

यह एम्युलेटर इंजन के बारे में बताता है:

  • auto - यह विकल्प, इंजन को अपने-आप चुनता है (डिफ़ॉल्ट रूप से चुना गया).
  • classic - यह पुराने QEMU 1 इंजन का इस्तेमाल करता है (अब इसका इस्तेमाल नहीं किया जा सकता).
  • qemu2 - इसमें QEMU 2 इंजन का नया वर्शन इस्तेमाल किया जाता है.

उदाहरण के लिए:

emulator @Pixel8_API_34 -engine auto

ऑटो-डिटेक्शन को ऐसी वैल्यू चुननी चाहिए जो किसी एवीडी का इस्तेमाल करते समय सबसे अच्छी परफ़ॉर्मेंस दे. -engine विकल्प का इस्तेमाल सिर्फ़ डीबग करने और तुलना करने के लिए करें.

-gpu mode

यह विकल्प, जीपीयू इम्यूलेशन मोड चुनता है. उदाहरण के लिए:

emulator @Pixel8_API_34 -gpu swiftshader_indirect

ज़्यादा जानकारी के लिए, ग्राफ़िक्स ऐक्सलरेशन कॉन्फ़िगर करना लेख पढ़ें.

-no-accel

इस विकल्प का इस्तेमाल करने पर, x86 या x86_64 सिस्टम इमेज का इस्तेमाल करते समय, एम्युलेटर वीएम ऐक्सेलरेशन की सुविधा बंद हो जाती है. इसका इस्तेमाल सिर्फ़ डीबग करने के लिए किया जाता है. यह -accel off को तय करने जैसा ही है. उदाहरण के लिए:

emulator @Pixel8_API_34 -no-accel

ज़्यादा जानकारी के लिए, Android Emulator के लिए हार्डवेयर ऐक्सेलरेटेड रेंडरिंग कॉन्फ़िगर करना लेख पढ़ें.

-nojni
-no-jni

यह Android Dalvik या ART रनटाइम में, एक्सटेंडेड Java नेटिव इंटरफ़ेस (जेएनआई) की जांच बंद करता है. उदाहरण के लिए:

emulator @Pixel8_API_34 -nojni

वर्चुअल डिवाइस शुरू करने पर, एक्सटेंडेड जेएनआई जांचें डिफ़ॉल्ट रूप से चालू होती हैं. ज़्यादा जानकारी के लिए, JNI के बारे में सुझाव देखें.

-selinux {disabled|permissive}

यह Linux ऑपरेटिंग सिस्टम पर, Security-Enhanced Linux (SELinux) सुरक्षा मॉड्यूल को disabled या permissive मोड पर सेट करता है. उदाहरण के लिए:

me-linux$ emulator @Pixel8_API_34 -selinux permissive

डिफ़ॉल्ट रूप से, SELinux enforcing मोड में होता है. इसका मतलब है कि सुरक्षा नीति लागू की जाती है. permissive मोड, SELinux नीति को लोड करता है, लेकिन उसे लागू नहीं करता. इस विकल्प से, सिर्फ़ नीति के उल्लंघनों को लॉग किया जाता है. disabled मोड, SELinux के लिए कर्नेल सपोर्ट को बंद कर देता है.

-timezone timezone

यह विकल्प, वर्चुअल डिवाइस के लिए टाइम ज़ोन को होस्ट के टाइम ज़ोन के बजाय timezone पर सेट करता है. उदाहरण के लिए:

emulator @Pixel8_API_34 -timezone Europe/Paris

डिफ़ॉल्ट रूप से, एम्युलेटर आपके डेवलपमेंट कंप्यूटर के टाइम ज़ोन का इस्तेमाल करता है. इस विकल्प का इस्तेमाल, किसी दूसरे टाइम ज़ोन को सेट करने के लिए करें. इसके अलावा, अगर टाइम ज़ोन का अपने-आप पता लगाने की सुविधा ठीक से काम नहीं कर रही है, तो भी इस विकल्प का इस्तेमाल करें. timezone वैल्यू, zoneinfo फ़ॉर्मैट में होनी चाहिए. यह area/location या area/subarea/location होती है. उदाहरण के लिए:

  • America/Los_Angeles
  • Europe/Paris
  • America/Argentina/Buenos_Aires

बताया गया टाइम ज़ोन, zoneinfo डेटाबेस में होना चाहिए.

-version

इससे एम्युलेटर का वर्शन नंबर दिखता है. उदाहरण के लिए:

emulator @Pixel8_API_34 -version

या

emulator -version
UI
-no-boot-anim

इस विकल्प को चालू करने पर, एम्युलेटर के चालू होने के दौरान बूट ऐनिमेशन बंद हो जाता है. इससे एम्युलेटर तेज़ी से चालू होता है. उदाहरण के लिए:

emulator @Pixel8_API_34 -no-boot-anim

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

-screen mode

यह सेटिंग, टचस्क्रीन मोड को सेट करती है. उदाहरण के लिए:

emulator @Pixel8_API_34 -screen no-touch

mode इनमें से कोई भी वैल्यू हो सकती है:

  • touch - यह टच स्क्रीन की तरह काम करता है (डिफ़ॉल्ट).
  • multi-touch - इससे मल्टी-टच स्क्रीन की तरह काम किया जा सकता है.
  • no-touch - इससे टच और मल्टी-टच स्क्रीन इम्यूलेशन बंद हो जाता है.

बेहतर विकल्प

नीचे दी गई टेबल में, कमांड-लाइन स्टार्टअप के विकल्प दिए गए हैं. ये विकल्प उपलब्ध हैं, लेकिन आम तौर पर ऐप्लिकेशन डेवलपर इनका इस्तेमाल नहीं करते.

ब्यौरे में, वर्किंग डायरेक्ट्री, टर्मिनल में मौजूद वह डायरेक्ट्री होती है जिसमें कमांड डाली जा रही हैं. AVD सिस्टम डायरेक्ट्री और डेटा डायरेक्ट्री के बारे में जानने के लिए, डिफ़ॉल्ट डायरेक्ट्री और फ़ाइलें सेक्शन देखें. साथ ही, इनमें सेव की गई फ़ाइलों के बारे में भी जानें.

इनमें से कुछ विकल्प, बाहरी ऐप्लिकेशन डेवलपर के लिए सही हैं. वहीं, कुछ विकल्पों का इस्तेमाल मुख्य रूप से प्लैटफ़ॉर्म डेवलपर करते हैं. ऐप्लिकेशन डेवलपर, Android ऐप्लिकेशन बनाते हैं और उन्हें खास AVD पर चलाते हैं. प्लैटफ़ॉर्म डेवलपर, Android सिस्टम पर काम करते हैं. साथ ही, वे इसे एमुलेटर में चलाते हैं. इसके लिए, पहले से बनाए गए किसी AVD की ज़रूरत नहीं होती.

चौथी टेबल. कमांड-लाइन के बेहतर विकल्प

विस्तृत विकल्प कम शब्दों में जानकारी
-bootchart timeout

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

उदाहरण के लिए:

emulator @Pixel8_API_34 -bootchart 120
-cache filepath

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

उदाहरण के लिए:

emulator @Pixel8_API_34 -cache
   ~/.android/avd/Pixel8_API_34.avd/cache_persistent.img

इस विकल्प का इस्तेमाल न करने पर, डिफ़ॉल्ट रूप से cache.img नाम की एक अस्थायी फ़ाइल बनाई जाती है. ज़्यादा जानकारी के लिए, AVD डेटा डायरेक्ट्री देखें.

-cache-size size

यह कुकी, कैश मेमोरी के पार्टिशन का साइज़ MB में सेट करती है.

उदाहरण के लिए:

emulator @Pixel8_API_34 -cache-size 1000

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

-data filepath

यह कुकी, उपयोगकर्ता के डेटा पार्टीशन की इमेज फ़ाइल सेट करती है. यह कुकी, फ़ाइल का नाम और ऐब्सलूट पाथ या वर्किंग डायरेक्ट्री के हिसाब से पाथ उपलब्ध कराती है, ताकि उपयोगकर्ता के डेटा की परसिस्टेंट फ़ाइल सेट अप की जा सके. अगर फ़ाइल मौजूद नहीं है, तो एम्युलेटर, डिफ़ॉल्ट userdata.img फ़ाइल से एक इमेज बनाता है. इसे आपके दिए गए फ़ाइल नाम में सेव करता है. साथ ही, बंद होने पर उपयोगकर्ता के डेटा को इसमें सेव करता है.

उदाहरण के लिए:

emulator @Pixel8_API_34 -data
   ~/.android/avd/Pixel8_API_34.avd/userdata-test.img

इस विकल्प का इस्तेमाल न करने पर, डिफ़ॉल्ट रूप से userdata-qemu.img नाम की फ़ाइल का इस्तेमाल किया जाता है. उपयोगकर्ता के डेटा की फ़ाइल के बारे में ज़्यादा जानने के लिए, AVD डेटा डायरेक्ट्री देखें.

-datadir dir

इस विकल्प की मदद से, पूरे पाथ का इस्तेमाल करके डेटा डायरेक्ट्री तय की जाती है. ज़्यादा जानकारी के लिए, AVD डेटा डायरेक्ट्री देखें.

उदाहरण के लिए:

emulator @Pixel8_API_34 -datadir
   ~/.android/avd/Pixel8_API_34.avd/mytest
-force-32bit

यह 64-बिट प्लैटफ़ॉर्म पर 32-बिट इम्यूलेटर का इस्तेमाल करता है. कभी-कभी, यह विकल्प टेस्टिंग या डीबग करने के लिए काम आता है. उदाहरण के लिए, एक समस्या यह थी कि कभी-कभी 64-बिट Windows पर एम्युलेटर नहीं चलता था, लेकिन 32-बिट पर चलता था. इस विकल्प की मदद से, समस्या को डीबग करने के लिए तुलना की जा सकती थी. यहां एक उदाहरण दिया गया है:

emulator @Pixel8_API_34 -force-32bit
-help-disk-images

डिस्क इमेज के बारे में सहायता पाएं. इस विकल्प में, ऐप्लिकेशन और प्लैटफ़ॉर्म डेवलपर, दोनों के लिए काम की जानकारी होती है. उदाहरण के लिए:

emulator -help-disk-images
-help-char-devices

device वर्ण के बारे में जानकारी मिलती है. कुछ एम्युलेटर विकल्पों के लिए, device पैरामीटर ज़रूरी होता है. उदाहरण के लिए:

emulator -help-char-devices
-help-sdk-images

ऐप्लिकेशन डेवलपर के लिए काम की डिस्क इमेज के बारे में मदद मिलती है. इस विकल्प से, SDK टूल की मदद से बनाए गए AVD के लिए, इमेज फ़ाइलों की जगह की जानकारी मिलती है. उदाहरण के लिए:

emulator -help-sdk-images
-help-build-images

इस कुकी से, प्लैटफ़ॉर्म डेवलपर के लिए काम की डिस्क इमेज के बारे में मदद मिलती है. उदाहरण के लिए:

emulator -help-build-images
-initdata filepath
-init-data filepath

डेटा पार्टीशन का शुरुआती वर्शन तय करता है. उपयोगकर्ता के डेटा को मिटाने के बाद, एम्युलेटर, तय की गई फ़ाइल के कॉन्टेंट को उपयोगकर्ता के डेटा में कॉपी करता है. डिफ़ॉल्ट रूप से, यह userdata-qemu.img फ़ाइल होती है. ऐसा, शुरुआती वर्शन के तौर पर डिफ़ॉल्ट userdata.img फ़ाइल का इस्तेमाल करने के बजाय किया जाता है. इससे फ़ाइल का नाम और ऐब्सलूट पाथ या वर्किंग डायरेक्ट्री के हिसाब से पाथ तय होता है.

उदाहरण के लिए:

emulator @Pixel8_API_34 -initdata
   ~/Library/Android/sdk/system-images/android-34/
   google_apis/x86_64/userdata-test.img

अगर कोई पाथ नहीं दिया जाता है, तो यह फ़ाइल को सिस्टम डायरेक्ट्री में सेव कर देता है. ज़्यादा जानकारी के लिए, AVD सिस्टम डायरेक्ट्री देखें.

-kernel filepath

यह किसी खास इम्यूलेटेड कर्नल का इस्तेमाल करता है. अगर कोई पाथ नहीं दिया जाता है, तो एम्युलेटर सिस्टम डायरेक्ट्री में देखता है. कर्नल डीबग मैसेज देखने के लिए, ‑show‑kernel विकल्प का इस्तेमाल करें.

उदाहरण के लिए:

emulator @Pixel8_API_34 -kernel
   ~/Library/Android/sdk/system-images/android-34/
   google_apis/x86_64/kernel-test.img -show-kernel

अगर आपने यह विकल्प नहीं चुना है, तो डिफ़ॉल्ट रूप से kernel-ranchu का इस्तेमाल किया जाएगा. ज़्यादा जानकारी के लिए, AVD सिस्टम डायरेक्ट्री देखें.

-noaudio
-no-audio

इस वर्चुअल डिवाइस के लिए, ऑडियो की सुविधा बंद करता है. कुछ Linux और Windows कंप्यूटर में ऑडियो ड्राइवर खराब होते हैं. इससे अलग-अलग समस्याएं होती हैं. जैसे, एम्युलेटर शुरू नहीं हो पाता. इस मामले में, समस्या हल करने के लिए इस विकल्प का इस्तेमाल करें. इसके अलावा, ऑडियो बैकएंड बदलने के लिए QEMU_AUDIO_DRV एनवायरमेंट वैरिएबल का इस्तेमाल किया जा सकता है.

उदाहरण के लिए:

emulator @Pixel8_API_34 -noaudio
-nocache
-no-cache

इस विकल्प से, बिना कैश मेमोरी वाले पार्टीशन के एम्युलेटर शुरू होता है. इस विकल्प का इस्तेमाल न करने पर, डिफ़ॉल्ट रूप से cache.img नाम की एक अस्थायी फ़ाइल बनती है. यह विकल्प सिर्फ़ प्लैटफ़ॉर्म डेवलपर के लिए है. ज़्यादा जानकारी के लिए, AVD डेटा डायरेक्ट्री देखें.

उदाहरण के लिए:

emulator @Pixel8_API_34 -nocache
-no-snapshot

यह विकल्प, लोड और सेव करने की दोनों कार्रवाइयों को अपने-आप होने से रोकता है. इससे एम्युलेटर, बूट करने की पूरी प्रोसेस को पूरा करता है और बंद होने पर अपनी स्थिति को खो देता है. यह -snapshot विकल्प को बदल देता है.

उदाहरण के लिए:

emulator @Pixel8_API_34 -no-snapshot
-no-snapshot-load

इस विकल्प से, एम्युलेटर को स्नैपशॉट स्टोरेज से एवीडी की स्थिति लोड करने से रोका जाता है. इससे डिवाइस पूरी तरह से बूट होता है.

उदाहरण के लिए:

emulator @Pixel8_API_34 -no-snapshot-load
-no-snapshot-save

इस विकल्प को चुनने पर, एम्युलेटर बंद होने पर एवीडी की स्थिति को स्नैपशॉट स्टोरेज में सेव नहीं करेगा. इसका मतलब है कि सभी बदलाव मिट जाएंगे.

उदाहरण के लिए:

emulator @Pixel8_API_34 -no-snapshot-save
-no-snapshot-update-time

स्नैपशॉट वापस लाने पर, एवीडी के समय को तुरंत ठीक नहीं करता. यह विकल्प, टेस्टिंग के दौरान काम आ सकता है. इससे समय में अचानक बदलाव नहीं होता. समय के अपडेट, अब भी एवीडी को हर 15 सेकंड में भेजे जाते हैं.

उदाहरण के लिए:

emulator @Pixel8_API_34 -no-snapshot-update-time
-no-snapstorage

यह विकल्प, एम्युलेटर को चालू करता है. हालांकि, इसमें किसी फ़ाइल को माउंट नहीं किया जाता है, ताकि स्टेट स्नैपशॉट को सेव या लोड किया जा सके. इससे एम्युलेटर को पूरी तरह से बूट किया जाता है और स्टेट स्नैपशॉट की सुविधा बंद हो जाती है. यह विकल्प, -snapstorage और -snapshot विकल्पों को बदल देता है.

उदाहरण के लिए:

emulator @Pixel8_API_34 -no-snapstorage
-no-window

इस विकल्प से, एम्युलेटर पर ग्राफ़िकल विंडो डिसप्ले बंद हो जाता है. यह विकल्प तब काम आता है, जब डिसप्ले की सुविधा के बिना सर्वर पर एम्युलेटर चलाया जा रहा हो. एम्युलेटर को adb या कंसोल के ज़रिए ऐक्सेस किया जा सकता है. उदाहरण के लिए:

emulator @Pixel8_API_34 -no-window
-partition-size size

इससे सिस्टम डेटा पार्टिशन का साइज़ MB में तय किया जाता है. उदाहरण के लिए:

emulator @Pixel8_API_34 -partition-size 1024
-prop name=value

यह बूट होने पर, एम्युलेटर में Android सिस्टम प्रॉपर्टी सेट करता है. name, qemu_prop के तौर पर लेबल की गई प्रॉपर्टी का नाम होना चाहिए. इसमें ज़्यादा से ज़्यादा 32 वर्ण होने चाहिए और कोई खाली जगह नहीं होनी चाहिए. साथ ही, value में ज़्यादा से ज़्यादा 92 वर्ण होने चाहिए. उदाहरण के लिए, property_contexts फ़ाइल देखें. एक कमांड लाइन पर कई ‑prop विकल्प तय किए जा सकते हैं. यह विकल्प, डीबग करने के लिए मददगार हो सकता है. उदाहरण के लिए:

emulator @Pixel8_API_34 -prop qemu.name=value -prop qemu.abc=xyz
-qemu args QEMU एम्युलेटर सॉफ़्टवेयर को आर्ग्युमेंट पास करता है. इस विकल्प का इस्तेमाल करते समय, पक्का करें कि यह आखिरी विकल्प हो. ऐसा इसलिए, क्योंकि इसके बाद के सभी विकल्पों को QEMU के लिए खास तौर पर बनाए गए विकल्पों के तौर पर माना जाता है. यह विकल्प काफ़ी बेहतर है. इसका इस्तेमाल सिर्फ़ उन डेवलपर को करना चाहिए जिन्हें QEMU और Android इम्यूलेशन के बारे में अच्छी जानकारी है.
-qemu -h

-qemu की मदद दिखाता है. उदाहरण के लिए:

emulator -qemu -h
-ramdisk filepath

इससे रैमडिस्क बूट इमेज के बारे में पता चलता है. इससे फ़ाइल का नाम और ऐब्सलूट पाथ या वर्किंग डायरेक्ट्री के हिसाब से पाथ तय होता है.

उदाहरण के लिए:

emulator @Pixel8_API_34 -ramdisk
   ~/Library/Android/sdk/system-images/android-34/
   google_apis/x86_64/ramdisk-test.img

इस विकल्प का इस्तेमाल न करने पर, सिस्टम डायरेक्ट्री में मौजूद ramdisk.img फ़ाइल का इस्तेमाल डिफ़ॉल्ट रूप से किया जाता है. ज़्यादा जानकारी के लिए, AVD सिस्टम डायरेक्ट्री देखें.

-report-console socket

यह कुकी, रिमोट तीसरे पक्ष को कंसोल पोर्ट की जानकारी देती है. ऐसा इम्यूलेशन शुरू करने से पहले किया जाता है. यह अपने-आप जांच करने वाली स्क्रिप्ट के लिए काम की हो सकती है. socket को इनमें से किसी एक फ़ॉर्मैट में होना चाहिए:

  • tcp:port[,server][,max=seconds][,ipv6]
  • unix:port[,server][,max=seconds][,ipv6]

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

-shell

इससे मौजूदा टर्मिनल पर रूट शेल कंसोल बनता है. यह विकल्प, adb shell कमांड से इन मामलों में अलग है:

  • यह एक रूट शेल बनाता है. इससे सिस्टम के कई हिस्सों में बदलाव किया जा सकता है.
  • यह सुविधा तब भी काम करती है, जब इम्यूलेट किए गए सिस्टम में adb daemon काम न कर रहा हो.
  • शेल के बजाय एम्युलेटर को रोकने के लिए, Control+C (macOS पर Command-C) दबाएं.

उदाहरण के लिए:

emulator @Pixel8_API_34 -shell
-snapshot name

यह स्नैपशॉट स्टोरेज फ़ाइल में मौजूद किसी स्नैपशॉट का नाम बताता है. इसका इस्तेमाल, अपने-आप शुरू होने और सेव होने की कार्रवाइयों के लिए किया जाता है.

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

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

स्नैपशॉट स्टोरेज फ़ाइल और डिफ़ॉल्ट फ़ाइल तय करने के बारे में जानकारी पाने के लिए, -snapstorage विकल्प देखें.

emulator @Pixel8_API_34 -snapshot snapshot2

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

avd snapshot save name कमांड का इस्तेमाल करके, एम्युलेटर कंसोल से स्नैपशॉट भी बनाया जा सकता है. ज़्यादा जानकारी के लिए, इमुलेटर कंसोल कमांड भेजना लेख पढ़ें.

-snapshot-list

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

उदाहरण के लिए:

emulator @Pixel8_API_34 -snapshot-list -snapstorage
   ~/.android/avd/Pixel8_API_34.avd/snapshots-test.img

आउटपुट में आईडी और टैग कॉलम की वैल्यू का इस्तेमाल, -snapshot विकल्प के लिए आर्ग्युमेंट के तौर पर किया जा सकता है.

-snapstorage filepath

यह ऐसी रिपॉज़िटरी फ़ाइल के बारे में बताता है जिसमें सभी स्टेट स्नैपशॉट शामिल होते हैं. इस फ़ाइल में, एक्ज़ीक्यूशन के दौरान लिए गए सभी स्नैपशॉट सेव किए जाते हैं. एम्युलेटर चलाने के दौरान, सिर्फ़ इस फ़ाइल में मौजूद स्नैपशॉट वापस लाए जा सकते हैं.

उदाहरण के लिए:

emulator @Pixel8_API_34 -snapstorage
   ~/.android/avd/Pixel8_API_34.avd/snapshots-test.img

अगर आपने यह विकल्प नहीं चुना है, तो डेटा डायरेक्ट्री में डिफ़ॉल्ट रूप से snapshots.img का इस्तेमाल किया जाएगा. अगर बताई गई फ़ाइल मौजूद नहीं है, तो एम्युलेटर शुरू हो जाएगा. हालांकि, इसमें स्टेट स्नैपशॉट सेव या लोड करने की सुविधा नहीं होगी.

-sysdir dir

यह ऐब्सलूट पाथ का इस्तेमाल करके, सिस्टम डायरेक्ट्री के बारे में बताता है. ज़्यादा जानकारी के लिए, AVD सिस्टम डायरेक्ट्री देखें. उदाहरण के लिए:

emulator @Pixel8_API_34 -sysdir
   ~/Library/Android/sdk/system-images/android-34/
   google_apis/x86_64/test
-system filepath

इससे सिस्टम की शुरुआती फ़ाइल के बारे में पता चलता है. यह फ़ाइल का नाम और ऐब्सलूट पाथ या वर्किंग डायरेक्ट्री से जुड़ा पाथ देता है.

उदाहरण के लिए:

emulator @Pixel8_API_34 -system
   ~/Library/Android/sdk/system-images/android-34/
   google_apis/x86_64/system-test.img

इस विकल्प का इस्तेमाल न करने पर, सिस्टम डायरेक्ट्री में मौजूद system.img फ़ाइल का इस्तेमाल डिफ़ॉल्ट रूप से किया जाता है. ज़्यादा जानकारी के लिए, AVD सिस्टम डायरेक्ट्री देखें.

-writable-system

इस विकल्प का इस्तेमाल करके, इम्यूलेशन सेशन के दौरान लिखने की अनुमति वाली सिस्टम इमेज का इस्तेमाल करें. इसके लिए:

  1. -writable-system विकल्प का इस्तेमाल करके, वर्चुअल डिवाइस शुरू करें.
  2. कमांड टर्मिनल में adb remount कमांड डालें, ताकि एम्युलेटर को system/ को पढ़ने/लिखने के तौर पर फिर से माउंट करने के लिए कहा जा सके. डिफ़ॉल्ट रूप से, इसे सिर्फ़ पढ़ने के लिए माउंट किया जाता है.

इस फ़्लैग का इस्तेमाल करने पर, सिस्टम इमेज की एक अस्थायी कॉपी बनती है. यह कॉपी बहुत बड़ी हो सकती है. इसका साइज़ कई सौ एमबी तक हो सकता है. हालांकि, जब एम्युलेटर बंद हो जाता है, तब यह कॉपी मिट जाती है.

ये विकल्प अब काम नहीं करेंगे

ये कमांड-लाइन विकल्प अब काम नहीं करते:

  • -audio-in
  • -audio-out
  • -charmap
  • -code-profile
  • -cpu-delay
  • -dpi-device
  • -dynamic_skin
  • -enable-kvm
  • -gps
  • -image
  • -keyset
  • -help-keys
  • -help-keyset-file
  • -nand-limits
  • -noskin
  • -no-skin
  • -onion
  • -onion-alpha
  • -onion-rotation
  • -radio
  • -ranchu
  • -raw-keys
  • -scale
  • -shared-net-id
  • -shell-serial
  • -skin
  • -skindir
  • -trace
  • -useaudio

कमांड-लाइन के विकल्पों के बारे में मदद पाना

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

सभी एम्युलेटर विकल्पों की सूची बनाना

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

emulator -help

किसी खास विकल्प के बारे में पूरी जानकारी पाना

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

emulator -help-option

उदाहरण के लिए:

emulator -help-netspeed

यह जानकारी, -help विकल्प से मिली जानकारी से ज़्यादा है.

सभी विकल्पों के बारे में ज़्यादा जानकारी पाना

सभी एम्युलेटर विकल्पों के बारे में ज़्यादा जानकारी पाने के लिए, यह कमांड डालें:

emulator -help-all

एम्युलेटर के एनवायरमेंट वैरिएबल की सूची बनाना

एम्युलेटर एनवायरमेंट वैरिएबल की सूची पाने के लिए, यह कमांड डालें:

emulator -help-environment

वर्चुअल डिवाइस लॉन्च करने से पहले, टर्मिनल विंडो में एनवायरमेंट वैरिएबल सेट किए जा सकते हैं. इसके अलावा, ऑपरेटिंग सिस्टम में उपयोगकर्ता सेटिंग के ज़रिए भी इसे सेट किया जा सकता है. उदाहरण के लिए, इसे Linux पर अपनी .bashrc फ़ाइल में सेट करें.

डीबग टैग की सूची बनाना

-debug विकल्पों के लिए टैग की सूची प्रिंट करने के लिए, यह निर्देश डालें:

emulator -help-debug-tags

-debug विकल्पों की मदद से, टैग के हिसाब से किसी खास एम्युलेटर कॉम्पोनेंट से डीबग मैसेज पाने या न पाने का विकल्प चुना जा सकता है.