Android Emulator — यह क्या है और एमुलेशन कैसे काम करता है

लेखक: IT Sectr प्रकाशित: 2026-02-09 पढ़ने का समय: 8 मिनट

Android Emulator Android Studio का एक घटक है जो डेवलपर के कंप्यूटर पर Android डिवाइस की पूर्ण वर्चुअल प्रतिलिपि चलाता है। एमुलेटर ARM निर्देशों को होस्ट की x86_64 आर्किटेक्चर में अनुवाद करने के लिए QEMU का उपयोग करता है। Google दस्तावेज़ीकरण AVD वर्चुअल डिवाइस और हार्डवेयर त्वरण के सेटअप के पूर्ण चक्र का वर्णन करता है।

मुख्य बिंदु

  • Android Emulator — ARM ट्रांसलेशन, GPU, सेंसर और NFC के समर्थन के साथ QEMU-आधारित पूर्ण एमुलेशन
  • AVD Manager — API स्तर, आर्किटेक्चर और हार्डवेयर विशेषताओं के चयन के साथ वर्चुअल डिवाइस बनाने और कॉन्फ़िगर करने का उपकरण
  • HAxM और Hyper-V — एमुलेटर के प्रदर्शन को 3-5 गुना बढ़ाने के लिए हार्डवेयर त्वरण
  • कोड में जाँच — Build.FINGERPRINT और Build.PRODUCT Kotlin में एमुलेटर में चलने का पता लगाने की अनुमति देते हैं
  • सेंसर एमुलेशन — एक्सेलेरोमीटर, जाइरोस्कोप, NFC, GPS और कैमरा एमुलेटर में समर्थित हैं

Android Emulator क्या है?

Android Emulator एक वर्चुअल Android डिवाइस है जो QEMU (Quick EMUlator) पर चलता है और Android हार्डवेयर प्लेटफ़ॉर्म का एमुलेशन करता है। iOS Simulator के विपरीत, Android Emulator ARM निर्देशों का पूरी तरह से अनुवाद करता है, जिससे मोबाइल आर्किटेक्चर के लिए संकलित कोड x86_64 होस्ट पर चलाया जा सकता है।

Google ने 2007 में Android SDK के पहले संस्करण के साथ Android Emulator जारी किया। तब से, एमुलेटर धीमे ARM-only समाधान से GPU समर्थन, हार्डवेयर त्वरण और सेंसर एमुलेशन वाले उच्च-प्रदर्शन सिस्टम में विकसित हुआ है। Google (Android Developer Blog, 2025) के अनुसार, HAxM वाला आधुनिक एमुलेटर पहली पीढ़ी की तुलना में 4-5 गुना तेज़ चलता है।

एमुलेटर Android डिवाइस के सभी घटकों का समर्थन करता है: CPU, GPU, RAM, स्टोरेज, टच स्क्रीन, एक्सेलेरोमीटर, जाइरोस्कोप, GPS, कैमरा, बैटरी, NFC, ब्लूटूथ और Wi-Fi। डेवलपर Extended Controls के माध्यम से आने वाली कॉल, SMS, विभिन्न नेटवर्क सिग्नल स्तर और जियोलोकेशन का अनुकरण कर सकता है।

एमुलेटर के लिए सिस्टम इमेज

Android Emulator SDK Manager के माध्यम से डाउनलोड की जाने वाली सिस्टम इमेज (System Images) का उपयोग करता है। प्रत्येक सिस्टम इमेज में चयनित API स्तर और लक्षित प्रोसेसर आर्किटेक्चर के लिए Android फ़र्मवेयर की पूर्ण प्रतिलिपि होती है। विभिन्न आर्किटेक्चर वाली इमेज उपलब्ध हैं: x86_64 (HAxM के साथ अनुशंसित), ARM64 (ARM संगतता परीक्षण के लिए) और Google APIs (पूर्व-स्थापित Google Play Services के साथ)। Wear OS, Android TV और Automotive के लिए भी अलग इमेज उपलब्ध हैं।

kotlin
// कोड में एमुलेटर प्रकार की जाँच
val isEmulator = Build.FINGERPRINT
    .contains("generic") ||
    Build.PRODUCT.contains("sdk")

if (isEmulator) {
    Timber.d("ऐप एमुलेटर में चल रहा है")
}

Android Studio में AVD सेटअप

AVD (Android Virtual Device) एमुलेटर के लिए वर्चुअल डिवाइस कॉन्फ़िगरेशन है। Android Studio में AVD Manager किसी भी विशेषताओं के संयोजन वाले डिवाइस बनाने की अनुमति देता है: मॉडल, स्क्रीन आकार, पिक्सेल घनत्व, RAM आकार, स्टोरेज आकार और Android संस्करण।

AVD पैरामीटरडेवलपमेंट के लिए अनुशंसापरीक्षण के लिए अनुशंसा
आर्किटेक्चरx86_64 (HAxM के साथ)ARM64 (शुद्ध एमुलेशन)
RAM2048-4096 MB1536-2048 MB
आंतरिक स्टोरेज8-16 GB4-8 GB
API स्तरनवीनतम स्थिरन्यूनतम समर्थित
Google Play Servicesसक्षम करेंआवश्यकतानुसार

AVD बनाना Android Studio में Device Manager के माध्यम से किया जाता है: एक हार्डवेयर प्रोफ़ाइल (Pixel, Nexus, Galaxy और अन्य), सिस्टम इमेज चुनें और पैरामीटर कॉन्फ़िगर करें। निर्माण के बाद, डिवाइस तत्काल ऐप लॉन्च के लिए Run Configurations सूची में दिखाई देता है।

त्वरित शुरुआत के लिए Snapshot मोड

एमुलेटर Quick Boot का समर्थन करता है — यह AVD स्थिति को snapshot के रूप में सहेजता है और अगले लॉन्च पर पुनर्स्थापित करता है। बूट समय 30-60 सेकंड से घटकर 2-5 सेकंड हो जाता है। साफ स्थिति में रीसेट करने के लिए AVD Manager में Cold Boot Now का उपयोग करें।

ARM अनुवाद और हार्डवेयर त्वरण

ARM अनुवाद Android Emulator की एक प्रमुख तकनीक है जो ARM निर्देशों को तुरंत x86_64 में परिवर्तित करती है। अनुवाद के बिना, एमुलेटर केवल x86_64 इमेज चला सकता है, जो परीक्षण क्षमताओं को सीमित करता है। Google ARM→x86 अनुवाद के लिए libhoudini और HAXM त्वरण के लिए Intel लाइब्रेरी का उपयोग करता है।

bash
# Windows पर HAxM स्थिति की जाँच
sc query "IntelHaxm"

# SDK Manager के माध्यम से HAxM स्थापित करना
sdkmanager "extras;intel;Hardware_Accelerated_Execution_Manager"

# हार्डवेयर त्वरण के साथ एमुलेटर शुरू करना
emulator -avd Pixel_9_API_35 -accel on -gpu auto

Intel HAxM (Hardware Accelerated Execution Manager) Intel VT-x प्रोसेसर के लिए एक वर्चुअलाइज़ेशन ड्राइवर है जो एमुलेटर को 3-5 गुना तेज़ करता है। AMD प्रोसेसर वाले Windows पर, Windows Hyper-V Platform और WHPX का उपयोग करें। हार्डवेयर त्वरण के बिना, एमुलेटर धीमा चलता है, जिसमें 1-2 सेकंड तक की एनिमेशन देरी होती है।

Apple Silicon (M-सीरीज़) वाले macOS पर, हार्डवेयर त्वरण Hypervisor.framework के माध्यम से मूल रूप से काम करता है। Google (Android Emulator Release Notes 2025) के अनुसार, M2 Max पर एमुलेटर बुनियादी संचालन में वास्तविक डिवाइस के 95% प्रदर्शन तक पहुँचता है।

एमुलेटर बनाम वास्तविक डिवाइस

एमुलेटर और वास्तविक डिवाइस के बीच चुनाव डेवलपमेंट चरण पर निर्भर करता है। एमुलेटर पर डेवलप और डीबग करना सुविधाजनक है: तेज़ स्टार्टअप, तत्काल डिप्लॉय, सेंसर अनुकरण के लिए Extended Controls। वास्तविक डिवाइस पर — अंतिम प्रदर्शन, बैटरी और हार्डवेयर परीक्षण।

परिदृश्यएमुलेटरवास्तविक डिवाइस
UI डेवलपमेंटहाँ (तेज़)नहीं (धीमा डिप्लॉय)
प्रदर्शन परीक्षणनहीं (बढ़े हुए मीट्रिक)हाँ (वास्तविक माप)
सेंसर एमुलेशन (GPS, NFC)हाँ (Extended Controls)सीमित
ऊर्जा खपतसमर्थित नहींहाँ (Battery Historian)
नेटवर्क परीक्षण (2G/3G/4G/5G)हाँ (गति अनुकरण)हाँ (SIM कार्ड के साथ)
CI/CD ऑटोमेशनहाँ (कोई भौतिक डिवाइस नहीं)कठिन (डिवाइस फार्म)

हार्डवेयर त्वरण वाले एमुलेटर का प्रदर्शन अक्सर वास्तविक बजट डिवाइस से अधिक होता है। इसलिए, लक्ष्य प्रदर्शन स्तर वाले वास्तविक डिवाइस पर अंतिम परीक्षण करें।

Kotlin कोड में एमुलेटर की जाँच

Kotlin में रनटाइम वातावरण का पता लगाना गलत कोड को अक्षम करने या डीबग जानकारी जोड़ने के लिए उपयोगी है। Android इस उद्देश्य के लिए Build.FINGERPRINT, Build.PRODUCT और Build.HARDWARE प्रदान करता है।

kotlin
object EmulatorDetector {
    val isEmulator: Boolean
        get() = Build.FINGERPRINT.startsWith("generic")
                || Build.FINGERPRINT.contains("emulator")
                || Build.HARDWARE == "ranchu"
                || Build.HARDWARE == "goldfish"
    
    fun logEnvironment() {
        if (isEmulator) {
            Log.d("EmulatorDetector", "वातावरण: एमुलेटर")
        }
    }
}

एमुलेटर डिटेक्टर का उपयोग डीबगिंग के दौरान मदद करता है: एमुलेटर पर आप विस्तृत लॉग सक्षम कर सकते हैं, एनिमेशन अक्षम कर सकते हैं या वास्तविक API कॉल को मॉक से बदल सकते हैं। जब तक ऐप के व्यावसायिक तर्क के लिए आवश्यक न हो, प्रोडक्शन बिल्ड में जाँच से बचें।

एमुलेटर पर ऐप्स का परीक्षण

Android Emulator CI सर्वर पर स्वचालित परीक्षण के लिए उपयोग किया जाता है। परीक्षण चलाने के लिए, AVD बनाना, एमुलेटर शुरू करना और सिस्टम के पूरी तरह लोड होने तक प्रतीक्षा करना आवश्यक है। Gradle Managed Devices इस प्रक्रिया को सरल बनाते हैं: AVD कॉन्फ़िगरेशन build.gradle.kts में वर्णित है।

kotlin
// build.gradle.kts — Gradle Managed Devices
android {
    testOptions {
        managedDevices {
            devices {
                register<ManagedVirtualDevice>("pixel9Api35") {
                    device = "Pixel 9"
                    apiLevel = 35
                    systemImageSource = "google"
                }
            }
        }
    }
}

एमुलेटर को मैन्युअल रूप से शुरू करने के लिए कमांड लाइन का उपयोग करें: emulator -avd Pixel_9_API_35 -no-window -no-audio -gpu swiftshader_indirect। -no-window फ़्लैग सर्वर वातावरण के लिए ग्राफ़िकल इंटरफ़ेस को अक्षम करता है, और -gpu swiftshader_indirect होस्ट GPU के बिना सॉफ़्टवेयर रेंडरिंग प्रदान करता है।

नेटवर्क और सेंसर एमुलेशन

Android Emulator में Extended Controls नेटवर्क स्थितियों के अनुकरण के लिए शक्तिशाली उपकरण प्रदान करता है: विलंबता, बैंडविड्थ और नेटवर्क प्रकार (GPRS, EDGE, 3G, 4G, 5G)। यह खराब कवरेज वाले क्षेत्र में भौतिक रूप से यात्रा किए बिना धीमे कनेक्शन पर ऐप व्यवहार का परीक्षण करने की अनुमति देता है।

सेंसर अनुकरण में वर्चुअल 3D डिवाइस मॉडल के माध्यम से एक्सेलेरोमीटर, जाइरोस्कोप और मैग्नेटोमीटर शामिल हैं। GPS के लिए, आप मार्गों वाली GPX फ़ाइलें लोड कर सकते हैं — एमुलेटर निर्देशांक के साथ गति का अनुकरण करता है, जो नेविगेशन ऐप्स के परीक्षण के लिए महत्वपूर्ण है। कैमरा होस्ट वेबकैम या इमेज लोडिंग के माध्यम से एमुलेट किया जाता है।

Android Emulator में मल्टी-डिस्प्ले टैबलेट और फोल्डेबल डिवाइस के लिए कई स्क्रीन का समर्थन करता है। Extended Controls एमुलेटर को पुनरारंभ किए बिना ओरिएंटेशन, स्क्रीन आकार और पिक्सेल घनत्व (DPI) बदलने की अनुमति देता है। फोल्डेबल डिवाइस के परीक्षण के लिए, मुड़ी और खुली स्थिति के बीच स्विच करने वाले Foldable मोड उपलब्ध हैं।

Wear OS और Android TV के लिए Android Emulator

एमुलेटर न केवल स्मार्टफ़ोन बल्कि Wear OS और Android TV का भी समर्थन करता है। Wear OS के लिए, गोल और आयताकार AVD कॉन्फ़िगरेशन, बेज़ेल रोटेशन अनुकरण और स्वाइप जेस्चर के साथ-साथ फ़ोन एमुलेटर के साथ इंटरैक्शन परीक्षण उपलब्ध हैं। Android TV के लिए D-pad नेविगेशन वाले इंटरफ़ेस का उपयोग किया जाता है। दोनों प्लेटफ़ॉर्म हार्डवेयर त्वरण और Google Play Services के साथ परीक्षण का समर्थन करते हैं, जो स्मार्टवॉच और टीवी ऐप डेवलपमेंट चक्र के लिए महत्वपूर्ण है।

अक्सर पूछे जाने वाले प्रश्न

Android Emulator iOS Simulator से कैसे अलग है?

Android Emulator निर्देश अनुवाद के साथ QEMU के माध्यम से पूर्ण ARM एमुलेशन का उपयोग करता है, जबकि iOS Simulator होस्ट आर्किटेक्चर के लिए कोड संकलित करता है। Android Emulator GPU, कैमरा, सेंसर, ब्लूटूथ, NFC का समर्थन करता है — iOS Simulator इनमें से अधिकांश सुविधाओं का समर्थन नहीं करता है।

कोड में कैसे जाँचें कि ऐप एमुलेटर में चल रहा है?

Kotlin में, "generic" या "emulator" के लिए Build.FINGERPRINT, और "ranchu" या "goldfish" के लिए Build.HARDWARE जाँचें। अतिरिक्त मार्कर के रूप में Build.PRODUCT का उपयोग करें — एमुलेटर के लिए इसमें "sdk_google" या "google_sdk" होता है।

Android Emulator को कैसे तेज़ करें?

AMD प्रोसेसर के लिए Intel HAxM (Intel VT-x) या Windows Hyper-V Platform (WHPX) सक्षम करें। हार्डवेयर त्वरण के साथ x86_64 सिस्टम इमेज का उपयोग करें। AVD Manager में एमुलेटर को कम से कम 4 GB RAM आवंटित करें। स्नैपशॉट लोडिंग के लिए Quick Boot सक्षम करें।

क्या Android Emulator में NFC का परीक्षण किया जा सकता है?

हाँ, Android Emulator Android 10 (API 29) से NFC एमुलेशन का समर्थन करता है। Extended Controls → Phone → NFC NDEF संदेश भेजने की अनुमति देता है। टैग रीड/राइट, पीयर-टू-पीयर और HCE मोड समर्थित हैं। पूर्ण परीक्षण के लिए NFC चिप वाले वास्तविक डिवाइस का उपयोग करें।

AVD के लिए कौन सी सिस्टम इमेज सबसे अच्छी हैं?

दैनिक डेवलपमेंट के लिए, Google APIs के साथ x86_64 चुनें — अधिकतम प्रदर्शन और सेवाओं का पूरा सेट। संगतता परीक्षण के लिए ARM64 इमेज का उपयोग करें। CI के लिए — Google Play Services के बिना इमेज, वे आकार में छोटी और तेज़ बूट होती हैं।

सारांश

  • Android Emulator — ARM अनुवाद, GPU, सेंसर और NFC के समर्थन के साथ QEMU पर पूर्ण Android डिवाइस एमुलेशन
  • AVD Manager — आर्किटेक्चर, API स्तर, RAM और हार्डवेयर विशेषताओं के चयन के साथ वर्चुअल डिवाइस कॉन्फ़िगरेशन
  • हार्डवेयर त्वरण — HAxM, Hyper-V और WHPX एमुलेटर प्रदर्शन को 3-5 गुना बढ़ाते हैं
  • वातावरण का पता लगाना — Build.FINGERPRINT, Build.PRODUCT और Build.HARDWARE एमुलेटर में चलने का पता लगाने के लिए
  • Extended Controls — परिदृश्य परीक्षण के लिए GPS, NFC, सेंसर, आने वाली कॉल और SMS अनुकरण
  • CI ऑटोमेशन — कुशल CI परीक्षण के लिए Gradle Managed Devices और x86_64 इमेज
  • Quick Boot — स्नैपशॉट मोड एमुलेटर बूट समय को 2-5 सेकंड तक कम करता है

हम एक मोबाइल एप्लिकेशन टर्नकी विकसित करेंगे

IT Sectr 2017 से स्टार्टअप और व्यवसायों के लिए iOS और Android एप्लिकेशन बनाता है। हम आपको सलाह देंगे और सर्वोत्तम समाधान प्रस्तावित करेंगे।

परियोजना पर चर्चा करें

यह भी पढ़ें