Android Emulator वर्चुअल डिवाइसों का इस्तेमाल करना

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

Android Emulator का आर्किटेक्चर

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

Android Emulator आर्किटेक्चर.

पहला डायग्राम. Android Emulator आर्किटेक्चर.

एवीडी इमेज बनाएं

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

एवीडी सिस्टम इमेज बनाने और चलाने के लिए:

  1. Android सोर्स डाउनलोड करें:

    mkdir aosp-main; cd aosp-main
    repo init -u
    repo sync -j24
    

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

  1. एवीडी सिस्टम की इमेज बनाएं. यह ठीक वैसी ही प्रक्रिया है, जैसी किसी विज्ञापन नेटवर्क कंपनी के लिए Android डिवाइस सिस्टम इमेज. उदाहरण के लिए, x86 64-बिट एवीडी बनाने के लिए:

    source ./build/envsetup.sh
    lunch sdk_phone_x86_64
    make -j32
    
  2. Android Emulator में AVD सिस्टम इमेज को चलाएं:

    emulator
    

यहां जाएं: कमांड-लाइन स्टार्टअप के विकल्प देखें. इमेज 2 में Android Emulator AVD मोड पर चल रहा है:

Android Emulator में एवीडी की इमेज है.

दूसरा डायग्राम. Android Emulator में एवीडी की इमेज है.

एवीडी सिस्टम की इमेज शेयर करें, ताकि अन्य लोग Android Studio की मदद से उनका इस्तेमाल कर सकें

एवीडी सिस्टम में मौजूद इमेज को दूसरों के साथ शेयर करने के लिए, इन निर्देशों का पालन करें. वे ये काम कर सकते हैं Android के साथ अपने AVD सिस्टम इमेज का इस्तेमाल करें Studio का इस्तेमाल करें.

  1. sdk और sdk_repo के अतिरिक्त पैकेज बनाएं:

    Android 13 और उसके बाद के वर्शन के लिए, emu_img_zip का इस्तेमाल करें आदेश:

    $ make emu_img_zip
    

    इससे एक sdk-repo-linux-system-images-eng.[username]].zip फ़ाइल जनरेट होती है.

    Android 12 और उससे पहले के वर्शन के लिए, sdk_repo का इस्तेमाल करें आदेश:

    $ make -j32 sdk sdk_repo
    

    make sdk sdk_repo निर्देश इसके तहत दो फ़ाइलें बनाता है aosp-main/out/host/linux-x86/sdk/sdk_phone_x86:

    • sdk-repo-linux-system-images-eng.[username].zip
    • repo-sys-img.xml
  2. sdk-repo-linux-system-images-eng.[username].zip फ़ाइल होस्ट करें हो सकता है कि आपके उपयोगकर्ता उस तक पहुंच सकें और उसका URL प्राप्त कर सकें, ताकि उसका उपयोग एवीडी के रूप में किया जा सके. सिस्टम की इमेज का यूआरएल.

  3. Android 12 और उससे पहले वाले वर्शन के लिए, repo-sys-img.xml में इसी हिसाब से बदलाव करें:

    • <sdk:url> को अपने एवीडी सिस्टम इमेज यूआरएल पर अपडेट करें.
    • यहां जाएं: sdk-sys-img-03.xsd पर जाकर, फ़ाइल में हुए अन्य अपडेट के बारे में जानें.
    • repo-sys-img.xml को किसी ऐसी जगह पर होस्ट करें जहां से आपके उपयोगकर्ता इसे ऐक्सेस कर सकें और इसकी कस्टम अपडेट साइट यूआरएल के तौर पर इस्तेमाल करने के लिए यूआरएल.

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

  1. कस्टम अपडेट साइट यूआरएल को SDK टूल को अपडेट करने वाली साइट.

    इससे आपकी पसंद के मुताबिक एवीडी सिस्टम की इमेज, System Images के पेज पर जोड़ दी जाती है.

  2. एवीडी बनाना इसके लिए, एवीडी सिस्टम इमेज को डाउनलोड और चुनें.

मल्टी-डिसप्ले की सुविधा जोड़ें

Android 10 के लिए मल्टी-डिसप्ले की सुविधा को बेहतर बनाता है का इस्तेमाल किया जा सकता है. Android पर एम्युलेटर, मल्टी-डिसप्ले एम्युलेशन के साथ भी काम करता है. तो आप कोई विशेष इसमें रीयल हार्डवेयर को सेट अप किए बिना, मल्टी-डिसप्ले एनवायरमेंट की सुविधा मिलती है.

एवीडी में मल्टी-डिसप्ले की सुविधा जोड़ी जा सकती है. इसके लिए, ये बदलाव करें या चेरी में से ये सीएल.

  • फ़ाइल में इन लाइनों को जोड़कर, बिल्ड में मल्टी-डिसप्ले की सेवा देने वाली कंपनी जोड़ें build/target/product/sdk_phone_x86.mk:

    PRODUCT_ARTIFACT_PATH_REQUIREMENT_WHITELIST := \
        system/lib/libemulator_multidisplay_jni.so \
        system/lib64/libemulator_multidisplay_jni.so \
        system/priv-app/MultiDisplayProvider/MultiDisplayProvider.apk \
    PRODUCT_PACKAGES += MultiDisplayProvider
    
  • इस लाइन को फ़ाइल में जोड़कर, मल्टी-डिसप्ले फ़ीचर फ़्लैग को चालू करें device/generic/goldfish/data/etc/advancedFeatures.ini:

    MultiDisplay = on
    

यहां से एम्युलेटर की नई सुविधाएं और रिलीज़ की जानकारी मिल सकती है नीचे दिए गए सोर्स में से एक है: