Android Emulator sanal cihazlarını kullanma

Kendi özel Android sistem görüntülerinizi çalıştıran Android cihazların emülasyonlarını oluşturmak için Android Emulator'ı kullanabilirsiniz. Ayrıca özel Android sistem görüntülerinizi de paylaşarak diğer kişilerin bunların öykünmelerini çalıştırabilmesini sağlayabilirsiniz. Ayrıca Android Emulator emülasyonlarına çoklu ekran desteği ekleyebilirsiniz.

Android Emulator mimarisi

Android Emulator, Android cihazların emülasyonlarını Windows, macOS veya Linux makinelerinde çalıştırmanıza olanak tanır. Android Emulator, Android işletim sistemini Android Sanal Aygıt (AVD) adı verilen sanal bir makinede çalıştırır. AVD, Android yazılım yığınının tamamını içerir ve sanki fiziksel bir cihazdaymış gibi çalışır. Şekil 1, Android Emulator'un üst düzey mimarisinin bir diyagramıdır. Emülatör hakkında daha fazla bilgi için bkz. Android Emulator'da uygulamaları çalıştırma .

Android Emulator mimarisi

Şekil 1. Android Emulator mimarisi

AVD görüntüleri oluşturma

Her AVD, söz konusu AVD'de çalışan bir Android sistem görüntüsü içerir. AVD Manager bazı sistem görüntülerini içerir. Ayrıca kaynak kodunuzdan özel AVD sistem görüntüleri oluşturabilir ve bunları çalıştırmak için cihaz emülasyonları oluşturabilirsiniz.

Bir AVD sistem görüntüsü oluşturmak ve çalıştırmak için:

  1. Android kaynağını indirin:

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

    Başka Android sürümleri oluşturmak istiyorsanız bunların şube adlarını genel Android deposunda bulabilirsiniz. Android Kod Adları, Etiketler ve Yapı Numaralarıyla eşleşirler.

  2. Bir AVD sistem görüntüsü oluşturun. Bu, bir Android cihaz sistem görüntüsü oluşturmakla aynı süreçtir. Örneğin, x86 32 bit AVD oluşturmak için:

    mkdir aosp-main; cd aosp-main
    source ./build/envsetup.sh
    lunch sdk_phone_x86
    make -j32
    

    Bir x86 64 bit AVD oluşturmayı tercih ederseniz, 64 bit hedefi için lunch çalıştırın:

    lunch sdk_phone_x86_64
    
  3. AVD sistem görüntüsünü Android Emulator'da çalıştırın:

    emulator
    

Öykünücüyü çalıştırma hakkında daha fazla ayrıntı için Komut satırı başlatma seçeneklerine bakın. Şekil 2, bir AVD çalıştıran Android Emülatörünün bir örneğini göstermektedir.

AVD çalıştıran Android Emulator

Şekil 2. AVD çalıştıran Android Emülatörü

AVD sistem görüntülerini başkalarının kullanması için Android Studio ile paylaşma

AVD sistemi görüntülerinizi başkalarıyla paylaşmak için bu talimatları izleyin. Uygulamaları geliştirmek ve test etmek için AVD sistem görüntülerinizi Android Studio ile kullanabilirler.

  1. Ek sdk ve sdk_repo paketleri oluşturun:

    Android 13 ve üzeri için emu_img_zip komutunu kullanın:

    $ make emu_img_zip
    

    Bu, bir sdk-repo-linux-system-images-eng.[username]].zip dosyası oluşturur.

    Android 12 ve önceki sürümler için sdk_repo komutunu kullanın:

    $ make -j32 sdk sdk_repo
    

    make sdk sdk_repo komutu aosp-main/out/host/linux-x86/sdk/sdk_phone_x86 altında iki dosya oluşturur:

    • sdk-repo-linux-system-images-eng.[username].zip
    • repo-sys-img.xml
  2. sdk-repo-linux-system-images-eng.[username].zip kullanıcılarınızın erişebileceği bir yerde barındırın ve URL'sini AVD Sistem Görüntüsü URL'si olarak kullanın.

  3. Android 12 ve önceki sürümler için repo-sys-img.xml dosyasını buna göre düzenleyin:

    • <sdk:url> öğesini AVD Sistem Görüntüsü URL'nize güncelleyin.
    • Dosyadaki diğer güncellemeler hakkında bilgi edinmek için sdk-sys-img-03.xsd dosyasına bakın.
    • repo-sys-img.xml kullanıcılarınızın erişebileceği bir yerde barındırın ve URL'sinin Özel Güncelleme Sitesi URL'si olarak kullanılmasını sağlayın.

Özel bir AVD görüntüsü kullanmak için SDK Yöneticisinde aşağıdakileri yapın:

  1. Özel Güncelleme Sitesi URL'sini SDK Güncelleme Sitesi olarak ekleyin .

    Bu, özel AVD sistem görüntünüzü Sistem Görüntüleri sayfasına ekler.

  2. Özel AVD sistem görüntüsünü indirip seçerek bir AVD oluşturun .

Çoklu Ekran desteği ekleme

Android 10, otomatik ve masaüstü modu gibi daha fazla kullanım durumunu daha iyi desteklemek için Çoklu Ekranı (MD) geliştirir . Android Emulator ayrıca çoklu ekran emülasyonunu da destekler. Böylece gerçek donanımı kurmadan belirli bir çoklu ekran ortamı oluşturabilirsiniz.

Aşağıdaki değişiklikleri yaparak veya bu CL'lerden seçim yaparak bir AVD'ye çoklu ekran desteği ekleyebilirsiniz.

  • Bu satırları build/target/product/sdk_phone_x86.mk dosyasına ekleyerek yapıya çoklu ekran sağlayıcısı ekleyin:

    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 dosyasına bu satırı ekleyerek Çoklu Ekran özelliği işaretini etkinleştirin:

    MultiDisplay = on
    

En yeni emülatör özelliklerini ve sürüm bilgilerini aşağıdaki kaynaklardan bulabilirsiniz: