Emülatör komut satırını başlatma

Android SDK, bilgisayarınızda çalışan sanal bir cihaz olan Android cihaz emülatörünü içerir. Android Emulator, fiziksel bir cihaz kullanmadan Android uygulamaları geliştirmenize ve test etmenize olanak tanır.

Bu sayfada, Android Emulator ile kullanabileceğiniz komut satırı özellikleri açıklanmaktadır. Android Emulator kullanıcı arayüzünü kullanma hakkında bilgi için Android Emulator'da uygulamaları çalıştırma başlıklı makaleyi inceleyin.

Emülatörü başlatma

Projenizi çalıştırmak veya AVD Yöneticisi üzerinden başlatmak yerine emülatörü başlatmak için emulator komutunu kullanın.

Bir terminal isteminden sanal cihaz başlatmak için temel komut satırı söz dizimi şöyledir:

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

Veya

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

Örneğin, Android Studio'yu Mac'te çalıştırırken emülatörü başlatırsanız varsayılan komut satırı aşağıdakine benzer olur:

/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 bağımsız değişkenlerinin yalnızca Android Studio'da emülatör penceresini çalıştırmak için kullanıldığını lütfen unutmayın. Emülatörü kendi penceresinde çalıştırmak istiyorsanız bu ek parametreleri kullanmamalısınız.

Emülatörü başlatırken başlangıç seçeneklerini belirtebilirsiniz ancak emülatör başlatıldıktan sonra bu seçenekleri belirleyemezsiniz.

AVD adlarının listesi için aşağıdaki komutu girin:

emulator -list-avds

Android ana dizininizdeki AVD adlarının listesini görüntülemek için bu seçeneği kullanın. Tüm yapılandırma ve AVD içeriklerinin depolandığı kullanıcıya özel dizinin kökünü belirten ANDROID_SDK_HOME ortam değişkenini ayarlayarak varsayılan ana dizini geçersiz kılabilirsiniz.

Sanal cihazı başlatmadan önce terminal penceresinde veya işletim sistemindeki kullanıcı ayarlarınız aracılığıyla ortam değişkenini ayarlayabilirsiniz. Örneğin, Linux'taki .bashrc dosyanızda.

Android Emulator'ü durdurmak için emülatör penceresini kapatın.

Uygulama yükleme

Android Studio veya emülatör kullanıcı arayüzü üzerinden uygulama yüklemenin yanı sıra adb yardımcı programını kullanarak da uygulamanızı sanal cihaza yükleyebilirsiniz.

Uygulamanızı yüklemek, çalıştırmak ve test etmek için adb'yı kullanmak üzere aşağıdaki genel adımları uygulayın:

  1. Uygulamanızı Uygulamanızı oluşturma ve çalıştırma bölümünde açıklandığı gibi oluşturup APK olarak paketleyin.
  2. Önceki bölümde açıklandığı gibi, gerekli başlangıç seçeneklerini kullanarak komut satırından emülatörü başlatın.
  3. adb kullanarak uygulamanızı yükleyin.
  4. Uygulamanızı emülatörde çalıştırıp test edin.
    Emülatör çalışırken Emülatör konsolunu kullanarak gerektiğinde komut verebilirsiniz.

Bir uygulamayı kaldırmak için Android cihazlarda yaptığınız gibi işlemi gerçekleştirin.

Sanal cihaz, yeniden başlatma işlemleri sırasında kullanıcı verisi disk bölümünde (userdata-qemu.img) uygulamayı ve durum verilerini korur. Bu verileri temizlemek için emülatörü -wipe-data seçeneğiyle başlatın veya AVD Yöneticisi'ndeki verileri silin. Kullanıcı verileri bölümü ve diğer depolama alanları hakkında daha fazla bilgi için aşağıdaki bölüme bakın.

Not: adb yardımcı programı, sanal cihazı gerçek bir fiziksel cihaz olarak görür. Bu nedenle, bazı yaygın adb komutlarla (ör. install) birlikte -d işaretini kullanmanız gerekebilir. -d işareti, bağlı cihazlardan hangisinin komut hedefi olarak kullanılacağını belirtmenize olanak tanır. -d belirtmezseniz emülatör, listesindeki ilk cihazı hedefler.

Varsayılan dizinleri ve dosyaları anlama

Emülatör, ilişkili dosyaları kullanır. Bu dosyalar arasında en önemlileri AVD sistem ve veri dizinleridir. Komut satırı seçeneklerini belirtirken emülatör dizin yapısını ve dosyalarını anlamak faydalı olsa da genellikle varsayılan dizinleri veya dosyaları değiştirmeniz gerekmez.

Android Emulator, (QEMU) hipervizörünü kullanır.

AVD sistem dizini

Sistem dizini, emülatörün işletim sistemini simüle etmek için kullandığı Android sistem görüntülerini içerir. Bu dizinde, API düzeyi, CPU mimarisi ve Android varyantı dahil olmak üzere aynı türdeki tüm AVD'ler tarafından paylaşılan platforma özgü, salt okunur dosyalar bulunur. Varsayılan konumlar şunlardır:

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

Nerede:

  • apiLevel, sayısal bir API düzeyi veya önizleme sürümleri için bir harftir. Örneğin, android-V, Android VanillaIceCream önizlemesini gösterir. Android 15, yayınlandığında android-35 ile belirtilen API düzeyi 35 oldu.
  • variant, sistem görüntüsü tarafından uygulanan belirli özelliklere karşılık gelen bir addır. Örneğin, google_apis veya android-wear.
  • arch hedef CPU mimarisidir. Örneğin, x86.

AVD için farklı bir sistem dizini belirtmek üzere -sysdir seçeneğini kullanın.

Emülatör, sistem dizininden aşağıdaki dosyaları okur:

Tablo 1. Android Emulator tarafından okunan sistem dizini dosyaları

Dosya Açıklama Farklı bir dosya belirtme seçeneği
kernel-qemu veya kernel-ranchu AVD için ikili çekirdek görüntüsü. kernel-ranchu, QEMU emülatörüne dayanır. -kernel
ramdisk.img Başlatma bölümü görüntüsü. Bu, sistem görüntüsü monte edilmeden önce çekirdek tarafından başlangıçta yüklenen system.img öğesinin bir alt kümesidir. Genellikle yalnızca birkaç ikili dosya ve başlatma komut dosyası içerir. -ramdisk
system.img Sistem görüntüsünün salt okunur olan ilk sürümü. Özellikle, API düzeyine ve varyanta karşılık gelen sistem kitaplıklarını ve verileri içeren bölüm. -system
userdata.img Veri bölümünün ilk sürümü, emüle edilmiş sistemde data/ olarak görünür ve AVD için yazılabilir tüm verileri içerir. Emülatör, yeni bir AVD oluşturduğunuzda veya ‑wipe-data seçeneğini kullandığınızda bu dosyayı kullanır. Daha fazla bilgi için aşağıdaki bölümdeki userdata-qemu.img dosya açıklamasına bakın. -initdata
-init-data

AVD veri dizini

İçerik dizini olarak da bilinen AVD veri dizini, tek bir AVD örneğine özgüdür ve AVD'deki tüm değiştirilebilir verileri içerir.

Varsayılan konum şöyledir. Burada name, AVD adıdır:

  • macOS ve Linux - ~/.android/avd/name.avd/
  • Windows 10 ve sonraki sürümler - C:\Users\user\.android\name.avd\\

Farklı bir AVD veri dizini belirtmek için -datadir seçeneğini kullanın.

Aşağıdaki tabloda, bu dizinde bulunan en önemli dosyalar listelenmiştir:

Tablo 2. AVD veri dizinindeki önemli dosyalar

Dosya Açıklama Farklı bir dosya belirtme seçeneği
userdata-qemu.img

Veri bölümünün içeriği, emüle edilmiş sistemde data/ olarak görünür. Yeni bir AVD oluşturduğunuzda veya AVD'yi fabrika ayarlarına sıfırlamak için -wipe-data seçeneğini kullandığınızda, bu dosyayı oluşturmak için sistem dizinindeki userdata.img dosyası öykünücü tarafından kopyalanır.

Her sanal cihaz örneği, kullanıcıya ve oturuma özel verileri depolamak için yazılabilir bir kullanıcı verileri resmi kullanır. Örneğin, benzersiz bir kullanıcının yüklü uygulama verilerini, ayarlarını, veritabanlarını ve dosyalarını depolamak için bu resmi kullanır. Her kullanıcının, bu kullanıcı tarafından oluşturulan AVD'lerin veri dizinlerini depolayan farklı bir ANDROID_SDK_HOME dizini vardır. Her AVD'nin tek bir userdata-qemu.img dosyası vardır.

-data
cache.img Öykünülmüş sistemde cache/ olarak görünen önbellek bölümü resmi. AVD'yi ilk kez oluşturduğunuzda veya -wipe-data seçeneğini kullandığınızda bu alan boştur. Geçici indirme dosyalarını depolar ve indirme yöneticisi, bazen de sistem tarafından doldurulur. Örneğin, tarayıcı, indirilen web sayfalarını ve resimleri öykünücü çalışırken önbelleğe almak için bu alanı kullanır. Sanal cihazı kapattığınızda dosya silinir. -cache seçeneğini kullanarak dosyayı kalıcı hale getirebilirsiniz. -cache
sdcard.img

(İsteğe bağlı) Sanal cihazda SD kartı simüle etmenizi sağlayan bir SD kart bölümü resmi. AVD Yöneticisi'nde veya mksdcard aracını kullanarak SD kartı resim dosyası oluşturabilirsiniz. Dosya, geliştirme bilgisayarınızda depolanır ve başlangıçta yüklenmelidir.

AVD Yöneticisi'nde bir AVD tanımlarken otomatik olarak yönetilen bir SD kart dosyası veya mksdcard aracıyla oluşturduğunuz bir dosyayı kullanmayı seçebilirsiniz. AVD ile ilişkili sdcard.img dosyasını AVD Yöneticisi'nde görüntüleyebilirsiniz. -sdcard seçeneği, AVD'de belirtilen SD kart dosyasını geçersiz kılar. Bu SD kart seçeneğinin Apple Silicon çipli Mac'lerde çalışmayacağını unutmayın.

Sanal cihaz çalışırken emülatör kullanıcı arayüzünü veya adb yardımcı programını kullanarak simüle edilmiş bir SD kartta dosyalara göz atabilir, dosyaları SD karta gönderebilir, SD karttan kopyalayabilir ve SD karttan kaldırabilirsiniz. Çalışan bir sanal cihazdan simüle edilmiş SD kartı kaldıramazsınız.

Dosyaları yüklemeden önce SD kart dosyasına kopyalamak için görüntü dosyasını döngü cihazı olarak bağlayın ve ardından dosyaları kopyalayın. Alternatif olarak, dosyaları doğrudan görüntüye kopyalamak için mtools paketi gibi bir yardımcı program kullanın.

Emülatör, dosyayı bayt havuzu olarak işlediği için SD kart biçimi önemli değildir.

-wipe-data seçeneği bu dosyayı etkilemez. Dosyayı temizlemek istiyorsanız dosyayı silin ve ardından AVD Yöneticisi veya mksdcard aracını kullanarak yeniden oluşturun. Dosyanın boyutunu değiştirmek de dosyayı silip yeni bir dosya oluşturur.

-sdcard

Emülatör tarafından kullanılan dizinleri ve dosyaları listeleme

Dosyaların nerede bulunduğunu iki şekilde öğrenebilirsiniz:

  • Emülatörü komut satırından başlatırken -verbose veya -debug init seçeneğini kullanın. Çıkışa bakın.
  • Varsayılan bir dizini listelemek için emulator -help-option komutunu kullanın. Örneğin:
    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.

Komut satırı başlangıç seçenekleri

Bu bölümde, emülatörü başlattığınızda komut satırında sağlayabileceğiniz seçenekler listelenir.

Not: Android Emulator'ın güvenilirliğini artırmak için geliştirme çalışmaları devam etmektedir. Çeşitli komut satırı seçeneklerine karşı bildirilen sorunların durumu ve hataları bildirmek için Android Sorun İzleyici'ye bakın.

Sık kullanılan seçenekler

Aşağıdaki tabloda, daha sık kullanabileceğiniz komut satırı başlangıç seçenekleri listelenmiştir:

Tablo 3. Sık kullanılan komut satırı seçenekleri

Komut satırı seçeneği Açıklama
Quick Boot
-no-snapshot-load Soğuk başlatma gerçekleştirir ve çıkışta emülatör durumunu kaydeder.
-no-snapshot-save Mümkünse hızlı başlatma işlemi gerçekleştirir ancak çıkışta emülatör durumunu kaydetmez.
-no-snapshot Quick Boot özelliğini tamamen devre dışı bırakır ve emülatör durumunu yüklemez veya kaydetmez.
Cihaz Donanımı
-camera-back mode
-camera-front mode

Arkaya veya öne bakan bir kamera için emülasyon modunu ayarlar. Bu, AVD'deki tüm kamera ayarlarını geçersiz kılar.

mode aşağıdaki değerlerden herhangi biri olabilir:

  • emulated - Emülatör, yazılımdaki bir kamerayı simüle eder.
  • environment - Emülatör, AVD'nin ortam yapılandırma dosyasında tanımlanan sanal bir sahneyi kullanır.
  • webcamn - Emülatör, geliştirme bilgisayarınıza bağlı ve numarayla belirtilen bir web kamerasını kullanır. Web kameralarının listesi için -webcam-list seçeneğini kullanın. Örneğin, webcam0.
  • imagefile:filename: Emülatör, kamera çıkışı için bir resim dosyası kullanır.
  • videofile:filename - Emülatör, kamera çıkışı için video kullanır.
  • image360:filename - Emülatör, kamera çıkışı için eşit dikdörtgenli bir panoramik görüntü kullanır. 36.6.4 ve sonraki sürümlerde kullanılabilir.
  • none: Sanal cihazda kamerayı devre dışı bırakır.

Örneğin:

emulator @Pixel8_API_34 -camera-back webcam0
-webcam-list Geliştirme bilgisayarınızda emülasyon için kullanılabilen web kameralarını listeler. Örneğin:
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'

Örnekte, ilk webcam0, komut satırında kullandığınız addır. İkincisi webcam0, geliştirme bilgisayarında işletim sistemi tarafından kullanılan addır. İkinci ad, işletim sistemine bağlı olarak değişir.

SDK Tools 25.2.4 sürümünden itibaren AVD adı zorunludur.

Disk görüntüleri ve bellek
-memory size

Fiziksel RAM boyutunu 1536 MB ile 8192 MB arasında belirtir. Örneğin:

emulator @Pixel8_API_34 -memory 2048

Bu değer, AVD ayarını geçersiz kılar.

-sdcard filepath

SD kart bölümü görüntü dosyasının dosya adını ve yolunu belirtir. Örneğin:

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

Dosya bulunamazsa emülatör yine başlatılır ancak SD kart olmadan. Komut, SD kart resmi yok uyarısını döndürüyor.

Bu seçeneği belirtmezseniz AVD farklı bir şey belirtmediği sürece veri dizininde varsayılan olarak sdcard.img kullanılır. Emüle edilmiş SD kartlar hakkında ayrıntılı bilgi için AVD veri dizini başlıklı makaleyi inceleyin.

-wipe-data

Kullanıcı verilerini siler ve ilk veri dosyasındaki verileri kopyalar. Bu seçenek, sanal cihazın verilerini temizler ve cihazı ilk tanımlandığı duruma geri döndürür. Yüklü tüm uygulamalar ve ayarlar kaldırılır. Örneğin:

emulator @Pixel8_API_34 -wipe-data

Varsayılan olarak, kullanıcı verileri dosyası userdata-qemu.img ve ilk veriler dosyası userdata.img şeklindedir. Bu dosyaların her ikisi de veri dizininde bulunur. -wipe-data seçeneği, sdcard.img dosyasını etkilemez. Kullanıcı verileri hakkında daha fazla bilgi için Varsayılan dizinleri ve dosyaları anlama başlıklı bölümü inceleyin.

Hata ayıklama
-debug tags

Bir veya daha fazla etiket için hata ayıklama mesajlarının gösterilmesini etkinleştirir veya devre dışı bırakır. Birden fazla etiketi boşluk, virgül veya sütunla ayırın. Örneğin:

$ emulator @Pixel8_API_34 -debug init,metrics

Bir etiketi devre dışı bırakmak için önüne kısa çizgi (-) koyun. Örneğin, aşağıdaki seçenek, ağ soketleri ve metriklerle ilgili olanlar hariç tüm hata ayıklama mesajlarını gösterir:

-debug all,-socket,-metrics

Etiket ve açıklamaların listesi için -help-debug-tags seçeneğini kullanın. Örneğin:

emulator -help-debug-tags

Varsayılan hata ayıklama etiketlerini ANDROID_VERBOSE ortam değişkeninde tanımlayabilirsiniz. Kullanmak istediğiniz etiketleri virgülle ayrılmış bir listede tanımlayın. Aşağıda, socket ve gles etiketlerinin nasıl belirtileceğini gösteren bir örnek verilmiştir:

ANDROID_VERBOSE=socket,gles

Şunları kullanmaya eşdeğerdir:

-debug-socket -debug-gles

veya

-debug socket,gles

-debug-tag
-debug-no-tag

Belirli bir hata ayıklama mesajı türünü etkinleştirir. Bir hata ayıklama mesajı türünü devre dışı bırakmak için no formunu kullanın. Örneğin:

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

Etiketlerin listesi için emulator -help-debug-tags komutunu kullanın.

-logcat logtags

Bir veya daha fazla etiket için Logcat mesajlarının gösterilmesini sağlar ve bunları terminal penceresine yazar. Örneğin, aşağıdaki komut tüm bileşenlerden gelen hata mesajlarını etkinleştirir:

emulator @Pixel8_API_34 -logcat *:e

logtags, adb logcat logtags komutuyla aynı biçimi kullanır. Daha fazla bilgi için adb logcat -help adresini ziyaret edin. Bu, boşluk veya virgülle ayrılmış, componentName:logLevel biçimindeki günlük filtrelerinin listesidir. componentName Joker karakter yıldızı (*) veya ActivityManager, SystemServer, InputManager ya da WindowManager gibi bir bileşen adıdır.

logLevel aşağıdaki değerlerden biri olmalıdır:

  • v - verbose
  • d - debug
  • i - bilgilendirici
  • w - uyarı günlük seviyesi
  • e - hata
  • s - sessiz

Aşağıdaki örnekte, GSM bileşen mesajları bilgilendirici günlük düzeyinde gösterilmektedir:

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

Komut satırında -logcat seçeneğini sağlamazsanız emülatör ANDROID_LOG_TAGS ortam değişkenini arar. ANDROID_LOG_TAGS, geçerli bir logtags değeriyle tanımlanmışsa ve boş değilse emülatör, Logcat çıkışının varsayılan olarak terminale aktarılmasını sağlamak için bu değeri kullanır. Aynı veya diğer günlük mesajlarını adb aracılığıyla terminale de yönlendirebilirsiniz.

Logcat ve adb hakkında daha fazla bilgi için Logcat komut satırı aracı, Logcat ile günlükleri görüntüleme ve yazma, Log sınıfı ve adb komutları verme başlıklı makaleleri inceleyin.

-show-kernel

Terminal penceresinde çekirdek hata ayıklama iletilerini gösterir. Örneğin:

emulator @Pixel8_API_34 -show-kernel

Bu seçeneğin kullanım alanlarından biri, başlatma işleminin doğru şekilde çalıştığını kontrol etmektir.

-verbose

Emülatör başlatma iletilerini terminal penceresine yazdırır. Örneğin:

emulator @Pixel8_API_34 -verbose

AVD'de tanımlanan bir sanal cihaz başlatılırken hangi dosya ve ayarların gerçekten seçildiğini gösterir. Bu seçenek, -debug-init belirtmekle aynıdır.

Ağ
-dns-server servers

Belirtilen DNS sunucularını kullanır. servers, en fazla dört DNS sunucusu adının veya IP adresinin virgülle ayrılmış listesidir. Örneğin:

emulator @Pixel8_API_34 -dns-server 192.0.2.0,
192.0.2.255

Varsayılan olarak, emülatör kullandığınız DNS sunucularını algılamaya çalışır ve Android sisteminin doğrudan sunuculara bağlanmasına izin vermek için emüle edilmiş güvenlik duvarı ağında özel takma adlar oluşturur. Farklı bir DNS sunucuları listesi belirtmek için -dns-server seçeneğini kullanın.

-http-proxy proxy

Belirtilen bir HTTP/HTTPS proxy'si üzerinden tüm TCP bağlantılarını yapar. Emülatörünüzün internete bir proxy sunucu üzerinden erişmesi gerekiyorsa uygun yönlendirmeyi ayarlamak için bu seçeneği veya http_proxy ortam değişkenini kullanabilirsiniz. Örneğin:

emulator @Pixel8_API_34 -http-proxy myserver:1981

proxy aşağıdakilerden biri olabilir:

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

http:// öneki atlanabilir.

Bu seçenek sağlanmazsa emülatör, http_proxy ortam değişkenini arar ve proxy biçimine uyan tüm değerleri otomatik olarak kullanır. Daha fazla bilgi için Emülatörü proxy ile kullanma başlıklı makaleyi inceleyin.

Not: Birden fazla emülatör çalıştırırken bu işaret ilk başlatmada ayarlanmalıdır.

-netdelay delay

Ağ gecikmesi emülasyonunu milisaniye cinsinden aşağıdaki delay değerlerden birine ayarlar:

  • gsm - GSM/CSD (en az 150, en fazla 550).
  • hscsd - HSCSD (en az 80, en fazla 400).
  • gprs - GPRS (en az 35, en fazla 200).
  • edge - EDGE/EGPRS (en az 80, en fazla 400).
  • umts - UMTS/3G (en az 35, en fazla 200).
  • hsdpa - HSDPA (en az 0, en fazla 0).
  • lte - LTE (en az 0, en fazla 0).
  • evdo - EVDO (en az 0, en fazla 0).
  • none: Gecikme yok, varsayılan (en az 0, en fazla 0).
  • num - Tam gecikmeyi belirtir.
  • min:max: Ayrı ayrı minimum ve maksimum gecikme sürelerini belirtir.

Örneğin:

emulator @Pixel8_API_34 -netdelay gsm

Emülatör, ağ sınırlama ve daha yüksek bağlantı gecikmelerini de destekler. Bu özelliği, tema yapılandırması veya ‑netspeed ve -netdelay seçenekleriyle tanımlayabilirsiniz.

Not: Bu ayar Ethernet ve hücresel bağlantı için geçerlidir.

-netfast

Ağ sınırlamayı devre dışı bırakır. Örneğin:

emulator @Pixel8_API_34 -netfast

Bu seçenek, -netspeed full -netdelay none belirtmekle aynıdır. Bu seçeneklerin varsayılan değerleri şunlardır:

Not: Bu ayar Ethernet ve hücresel bağlantı için geçerlidir.

-netspeed speed

Ağ hızı emülasyonunu ayarlar. Aşağıdaki speed değerlerden biriyle maksimum ağ yükleme ve indirme hızlarını kb/sn. cinsinden belirtir:

  • gsm - GSM/CSD (yükleme: 14,4, indirme: 14,4).
  • hscsd - HSCSD (yükleme: 14,4, indirme: 57,6).
  • gprs - GPRS (up: 28.8, down: 57.6).
  • edge - EDGE/EGPRS (yükleme: 473,6, indirme: 473,6).
  • umts - UMTS/3G (yukarı: 384,0, aşağı: 384,0).
  • hsdpa - HSDPA (yukarı: 5760,0, aşağı: 13.980,0).
  • lte - LTE (yükleme: 58.000, indirme: 173.000).
  • evdo - EVDO (yukarı: 75.000, aşağı: 280.000).
  • full - Sınır yok, varsayılan (yukarı: 0,0, aşağı: 0,0).
  • num - Hem yükleme hem de indirme hızını belirtir.
  • up:down: Ayrı ayrı yükleme ve indirme hızlarını belirtir.

Örneğin:

emulator @Pixel8_API_34 -netspeed edge

Emülatör, ağ sınırlama ve daha yüksek bağlantı gecikmelerini de destekler. Bu özelliği, tema yapılandırması veya ‑netspeed ve -netdelay seçenekleriyle tanımlayabilirsiniz.

Not: Bu ayar Ethernet ve hücresel bağlantı için geçerlidir.

-netsim-args arguments

Ağ simülatörüne ek bağımsız değişkenler iletir (netsim). arguments, boşlukla ayrılmış bir işaretler listesidir.

Örneğin, paket yakalamayı etkinleştirmek ve günlük kaydını stderr'ye yönlendirmek için:

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

Daha fazla bilgi için Gelişmiş emülatör ağ özellikleri başlıklı makaleyi inceleyin.

-port port

Konsol ve adb için kullanılan TCP bağlantı noktası numarasını ayarlar. Örneğin:

emulator @Pixel8_API_34 -port 5556

Makinenizde çalışan ilk sanal cihaz örneği için varsayılan değer 5554'tür. Sanal cihazlar normalde bir çift bitişik bağlantı noktasını kullanır: bir konsol bağlantı noktası ve bir adb bağlantı noktası. Belirli bir makinede çalışan ilk sanal cihazın konsolu, konsol bağlantı noktası 5554'ü ve adb bağlantı noktası 5555'i kullanır. Sonraki örneklerde, ikişer artan bağlantı noktası numaraları kullanılır. Örneğin, 5556/5557, 5558/5559 vb. Aralık 5554-5682'dir ve 64 eşzamanlı sanal cihaza izin verilir.

Bağlantı noktası atamaları genellikle -ports port,{port + 1} belirtmekle aynıdır. {port + 1} ücretsiz olmalı ve adb için ayrılmış olmalıdır. Konsol veya adb bağlantı noktalarından herhangi biri zaten kullanılıyorsa emülatör başlatılmaz.

‑port seçeneği, sanal cihazın hangi bağlantı noktalarını ve seri numarasını kullandığını bildirir ve sağladığınız değerlerle ilgili sorunlar varsa sizi uyarır. Emülatör kullanıcı arayüzünde şunları yapabilirsiniz: Pencere başlığında konsol bağlantı noktası numarasını görebilir ve adb bağlantı noktası numarasını Yardım > Hakkında'yı seçerek görüntüleyebilirsiniz.

port değeri çift değilse ve 5554 ile 5584 aralığındaysa, adb server emülatörden sonra başlatılırsa adb devices komutunu kullandığınızda sanal cihaz başlatılır ancak görünmez. Bu nedenle, çift numaralı bir konsol bağlantı noktası kullanmanızı öneririz.

-ports
console-port,adb-port

Konsol ve adb için kullanılan TCP bağlantı noktalarını ayarlar. Örneğin:

emulator @Pixel8_API_34 -ports 5556,5559

Geçerli bağlantı noktası aralığı 5554 ile 5682 arasındadır ve 64 eşzamanlı sanal cihaza izin verir. -ports seçeneği, emülatör örneğinin hangi bağlantı noktalarını ve seri numarasını kullandığını bildirir ve sağladığınız değerlerle ilgili sorunlar varsa sizi uyarır.

Mümkünse bunun yerine -port seçeneğini kullanmanızı öneririz. -ports seçeneği, özel ayarlar gerektiren ağ yapılandırmaları için kullanılabilir.

Konsol ve adb bağlantı noktalarını ayarlama hakkında daha fazla bilgi için -port seçeneğine bakın.

-tcpdump filepath

Ağ paketlerini yakalar ve bir dosyada depolar. Örneğin:

emulator @Pixel8_API_34 -tcpdump /path/dumpfile.cap

Emülatörün sanal Ethernet LAN'ı üzerinden gönderilen tüm ağ paketlerini yakalamaya başlamak için bu seçeneği kullanın. Ardından, trafiği analiz etmek için Wireshark gibi bir araç kullanabilirsiniz.

Bu seçeneğin tüm Ethernet paketlerini yakaladığını ve TCP bağlantılarıyla sınırlı olmadığını unutmayın.

Sistem
-accel mode

Emülatör sanal makine hızlandırmasını yapılandırır. Örneğin:

emulator @Pixel8_API_34 -accel auto

Hızlandırılmış emülasyon yalnızca x86 ve x86_64 sistem görüntülerinde çalışır. Linux'ta KVM'yi kullanır. Windows ve Mac'te Intel CPU ve Intel HAXM sürücüsü kullanılır. x86 veya x86_64 cihazı taklit etmiyorsanız bu seçenek yok sayılır.

mode için geçerli değerler:

  • auto - Hızlandırmanın desteklenip desteklenmediğini otomatik olarak belirler ve mümkün olduğunda kullanır (varsayılan).
  • off: Hızlandırmayı tamamen devre dışı bırakır. Bu seçenek, özellikle hata ayıklama için kullanışlıdır.
  • on - Hızlandırmayı zorlar. KVM veya HAXM yüklü değilse ya da kullanılamıyorsa emülatör başlatılmaz ve hata mesajı yazdırılır.

Daha fazla bilgi için Android Emulator'da donanım hızlandırmayı yapılandırma başlıklı makaleyi inceleyin.

-accel-check

Emülatör VM hızlandırması için gerekli bir hipervizörün (HAXM veya KVM) yüklü olup olmadığını kontrol eder. Örneğin:

emulator -accel-check

Daha fazla bilgi için Hipervizörün yüklü olup olmadığını kontrol etme başlıklı makaleyi inceleyin.

-engine engine

Emülatör motorunu belirtir:

  • auto: Motoru otomatik olarak seçer (varsayılan).
  • classic: Daha eski QEMU 1 motorunu kullanır (desteği sonlandırıldı).
  • qemu2: Daha yeni QEMU 2 motorunu kullanır.

Örneğin:

emulator @Pixel8_API_34 -engine auto

Otomatik algılama, belirli bir AVD'yi taklit ederken en iyi performansı sağlayan değeri seçmelidir. -engine seçeneğini yalnızca hata ayıklama ve karşılaştırma amaçlarıyla kullanın.

-gpu mode

GPU emülasyon modunu seçer. Örneğin:

emulator @Pixel8_API_34 -gpu swiftshader_indirect

Daha fazla bilgi için �Grafik hızlandırmayı yapılandırma başlıklı makaleyi inceleyin.

-no-accel

x86 veya x86_64 sistem görüntüsü kullanılırken emülatör sanal makine hızlandırmasını devre dışı bırakır. Yalnızca hata ayıklama için kullanışlıdır ve -accel off belirtmekle aynıdır. Örneğin:

emulator @Pixel8_API_34 -no-accel

Daha fazla bilgi için Android Emulator'da donanım hızlandırmayı yapılandırma başlıklı makaleyi inceleyin.

-nojni
-no-jni

Android Dalvik veya ART çalışma zamanında genişletilmiş Java Native Interface (JNI) kontrollerini devre dışı bırakır. Örneğin:

emulator @Pixel8_API_34 -nojni

Sanal cihazı başlattığınızda, genişletilmiş JNI kontrolleri varsayılan olarak etkinleştirilir. Daha fazla bilgi için JNI ipuçları başlıklı makaleyi inceleyin.

-selinux {disabled|permissive}

Linux işletim sisteminde Güvenliği Artırılmış Linux (SELinux) güvenlik modülünü disabled veya permissive moduna ayarlar. Örneğin:

me-linux$ emulator @Pixel8_API_34 -selinux permissive

SELinux varsayılan olarak enforcing modundadır. Bu modda güvenlik politikası zorunlu kılınır. permissive modu, SELinux politikasını yükler ancak zorunlu kılmaz. Bu seçenek yalnızca politika ihlallerini kaydeder. disabled modu, SELinux için çekirdek desteğini devre dışı bırakır.

-timezone timezone

Sanal cihazın saat dilimini ana makinenin saat dilimi yerine timezone olarak ayarlar. Örneğin:

emulator @Pixel8_API_34 -timezone Europe/Paris

Emülatör, varsayılan olarak geliştirme bilgisayarınızın saat dilimini kullanır. Farklı bir saat dilimi belirtmek veya otomatik algılama düzgün çalışmıyorsa bu seçeneği kullanın. timezone değeri zoneinfo biçiminde olmalıdır. Bu biçim area/location veya area/subarea/location'dir. Örneğin:

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

Belirtilen saat dilimi zoneinfo veritabanında olmalıdır.

-version

Emülatörün sürüm numarasını gösterir. Örneğin:

emulator @Pixel8_API_34 -version

Veya

emulator -version
UI
-no-boot-anim

Daha hızlı başlatma için emülatör başlatılırken başlatma animasyonunu devre dışı bırakır. Örneğin:

emulator @Pixel8_API_34 -no-boot-anim

Bu seçenek, daha yavaş bilgisayarlarda başlatma sırasını önemli ölçüde hızlandırabilir.

-screen mode

Emüle edilmiş dokunmatik ekran modunu ayarlar. Örneğin:

emulator @Pixel8_API_34 -screen no-touch

mode aşağıdaki değerlerden herhangi biri olabilir:

  • touch: Dokunmatik ekranı taklit eder (varsayılan).
  • multi-touch: Çoklu dokunmatik ekranı taklit eder.
  • no-touch - Dokunma ve çoklu dokunma ekranı emülasyonunu devre dışı bırakır.

Gelişmiş seçenekler

Aşağıdaki tablodaki komut satırı başlangıç seçenekleri kullanılabilir ancak ortalama bir uygulama geliştirici tarafından yaygın olarak kullanılmaz.

Açıklamalarda, çalışma dizini, komutları girdiğiniz terminaldeki geçerli dizindir. AVD sistem dizini, veri dizini ve bu dizinlerde depolanan dosyalar hakkında bilgi için varsayılan dizinler ve dosyalar bölümüne bakın.

Bu seçeneklerden bazıları harici uygulama geliştiriciler için uygundur, bazıları ise öncelikle platform geliştiriciler tarafından kullanılır. Uygulama geliştiriciler, Android uygulamaları oluşturur ve bunları belirli AVD'lerde çalıştırır. Platform geliştiriciler, Android sistemi üzerinde çalışır ve önceden oluşturulmuş AVD olmadan emülatörde çalıştırır.

Tablo 4. Gelişmiş komut satırı seçenekleri

Gelişmiş seçenek Kısa açıklama
-bootchart timeout

Saniye cinsinden zaman aşımıyla önyükleme grafiğini etkinleştirir. Bazı Android sistem görüntülerinde, başlatma grafiği oluşturma özelliği içeren değiştirilmiş bir başlatma sistemi bulunur. Bu seçenekle sisteme bir önyükleme grafiği oluşturma zaman aşımı süresi iletebilirsiniz. Başlatma sisteminizde bootcharting etkinleştirilmemişse bu seçenek hiçbir işe yaramaz. Bu seçenek, harici uygulama geliştiriciler için değil, öncelikle platform geliştiriciler için yararlıdır.

Örneğin:

emulator @Pixel8_API_34 -bootchart 120
-cache filepath

Önbellek bölümü resim dosyasını belirtir. Kalıcı bir önbellek dosyası oluşturmak için dosya adı ve mutlak yol ya da veri dizinine göreli bir yol sağlar. Dosya yoksa emülatör boş bir dosya olarak oluşturur.

Örneğin:

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

Bu seçeneği kullanmazsanız varsayılan olarak cache.img adlı geçici bir dosya kullanılır. Daha fazla bilgi için AVD veri dizini başlıklı makaleyi inceleyin.

-cache-size size

Önbellek bölümü boyutunu MB cinsinden ayarlar.

Örneğin:

emulator @Pixel8_API_34 -cache-size 1000

Bu seçeneği belirtmezseniz varsayılan değer 66 MB olur. Normalde, çoğu uygulama geliştiricinin bu seçeneğe ihtiyacı yoktur. Ancak varsayılan önbellekten daha büyük olan çok büyük dosyaları indirmeleri gerekiyorsa bu seçeneği kullanabilirler. Önbellek dosyası hakkında daha fazla bilgi için AVD veri dizini başlıklı makaleyi inceleyin.

-data filepath

Kullanıcı verileri bölümü resim dosyasını ayarlar. Kalıcı bir kullanıcı verileri dosyası oluşturmak için dosya adı ve mutlak yol ya da çalışma dizinine göreli bir yol sağlar. Dosya yoksa emülatör, varsayılan userdata.img dosyasından bir resim oluşturur, bunu belirttiğiniz dosya adına kaydeder ve kapatma sırasında kullanıcı verilerini bu dosyaya kalıcı olarak yazar.

Örneğin:

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

Bu seçeneği kullanmazsanız varsayılan olarak userdata-qemu.img adlı bir dosya kullanılır. Kullanıcı verileri dosyası hakkında daha fazla bilgi için AVD veri dizini başlıklı makaleyi inceleyin.

-datadir dir

Mutlak yol kullanarak bir veri dizini belirtir. Daha fazla bilgi için AVD veri dizini başlıklı makaleyi inceleyin.

Örneğin:

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

64 bit platformlarda 32 bit emülatörünü kullanır. Bu seçenek, zaman zaman test veya hata ayıklama için yararlı olabilir. Örneğin, emülatörün bazen 64 bit Windows'ta çalışmamasına ancak 32 bit Windows'ta çalışmasına neden olan bir sorun vardı. Bu seçenek, sorunu ayıklamak için karşılaştırma yapmaya yardımcı oldu. Örnek:

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

Disk görüntüleri hakkında yardım alır. Bu seçenek, hem uygulama hem de platform geliştiricilerle alakalı bilgiler sağlar. Örneğin:

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

Karakter device özellikleri hakkında yardım alma Bazı emülatör seçenekleri için A device parametresi gereklidir. Örneğin:

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

Uygulama geliştiricilerle ilgili disk görüntüleri hakkında yardım alır. Bu seçenek, SDK araçlarıyla oluşturulan bir AVD'nin resim dosyalarının bulunduğu yerle ilgili bilgileri alır. Örneğin:

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

Platform geliştiricileriyle ilgili disk görüntüleri hakkında yardım alma Örneğin:

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

Veri bölümünün ilk sürümünü belirtir. Kullanıcı verileri silindikten sonra, emülatör başlangıç sürümü olarak varsayılan userdata.img dosyasını kullanmak yerine belirtilen dosyanın içeriğini kullanıcı verilerine (varsayılan olarak userdata-qemu.img dosyası) kopyalar. Dosya adını ve mutlak yolu ya da çalışma dizinine göreli yolu belirtir.

Örneğin:

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

Bir yol belirtmezseniz dosya sistem dizinine yerleştirilir. Daha fazla bilgi için AVD sistem dizini başlıklı makaleyi inceleyin.

-kernel filepath

Belirli bir emüle edilmiş çekirdek kullanır. Bir yol belirtmezseniz emülatör sistem dizinine bakar. Çekirdek hata ayıklama mesajlarını görüntülemek için ‑show‑kernel seçeneğini kullanın.

Örneğin:

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

Bu seçeneği belirtmezseniz varsayılan değer kernel-ranchu olur. Daha fazla bilgi için AVD sistem dizini başlıklı makaleyi inceleyin.

-noaudio
-no-audio

Bu sanal cihaz için ses desteğini devre dışı bırakır. Bazı Linux ve Windows bilgisayarlarda, emülatörün başlatılmasını engelleme gibi farklı sorunlara neden olan hatalı ses sürücüleri bulunur. Bu durumda, sorunu çözmek için bu seçeneği kullanın. Alternatif olarak, ses arka ucunu değiştirmek için QEMU_AUDIO_DRV ortam değişkenini kullanabilirsiniz.

Örneğin:

emulator @Pixel8_API_34 -noaudio
-nocache
-no-cache

Emülatörü önbellek bölümü olmadan başlatır. Bu seçeneği kullanmazsanız varsayılan olarak cache.img adlı geçici bir dosya kullanılır. Bu seçenek yalnızca platform geliştiriciler içindir. Daha fazla bilgi için AVD veri dizini başlıklı makaleyi inceleyin.

Örneğin:

emulator @Pixel8_API_34 -nocache
-no-snapshot

Hem otomatik yükleme hem de kaydetme işlemlerini engeller. Bu nedenle, kapatıldığında emülatörün tam başlatma sırası yürütmesine ve durumunu kaybetmesine neden olur. Bu ayar, -snapshot seçeneğini geçersiz kılar.

Örneğin:

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

Emülatörün, AVD durumunu anlık görüntü depolama alanından yüklemesini engeller. Tam başlatma işlemi gerçekleştirir.

Örneğin:

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

Emülatörün çıkışta AVD durumunu anlık görüntü depolama alanına kaydetmesini engeller. Bu durumda tüm değişiklikler kaybolur.

Örneğin:

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

Anlık görüntü geri yükleme işleminde AVD saatini hemen düzeltmeye çalışmaz. Bu seçenek, ani bir zaman atlamasını önlediği için test sırasında yararlı olabilir. AVD'ye yaklaşık 15 saniyede bir saat güncellemeleri gönderilmeye devam eder.

Örneğin:

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

Durum anlık görüntülerini depolamak veya yüklemek için dosya bağlamadan emülatörü başlatır. Bu işlem, tam başlatmayı zorlar ve durum anlık görüntüsü işlevini devre dışı bırakır. Bu seçenek, -snapstorage ve -snapshot seçeneklerini geçersiz kılar.

Örneğin:

emulator @Pixel8_API_34 -no-snapstorage
-no-window

Emülatörde grafik pencere gösterimini devre dışı bırakır. Bu seçenek, ekranı olmayan sunucularda emülatörü çalıştırırken kullanışlıdır. Emülatöre adb veya konsol üzerinden erişebilirsiniz. Örneğin:

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

Sistem verileri bölümünün boyutunu MB cinsinden belirtir. Örneğin:

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

Emülatör başlatıldığında emülatörde bir Android sistem özelliği ayarlar. name, en fazla 32 karakterden oluşan, boşluk içermeyen ve qemu_prop olarak etiketlenmiş bir mülk adı olmalıdır. value ise en fazla 92 karakterden oluşan bir dize olmalıdır. Örnek için property_contexts dosyasına bakın. Tek bir komut satırında birden fazla ‑prop seçeneği belirtebilirsiniz. Bu seçenek, hata ayıklama için yararlı olabilir. Örneğin:

emulator @Pixel8_API_34 -prop qemu.name=value -prop qemu.abc=xyz
-qemu args QEMU emülatör yazılımına bağımsız değişkenler aktarır. Bu seçeneği kullanırken, kendisinden sonraki tüm seçenekler QEMU'ya özgü seçenekler olarak yorumlandığından, bu seçeneğin belirtilen son seçenek olduğundan emin olun. Bu seçenek oldukça gelişmiştir ve yalnızca QEMU ve Android emülasyonu konusunda çok bilgili olan geliştiriciler tarafından kullanılmalıdır.
-qemu -h

-qemu yardımını gösterir. Örneğin:

emulator -qemu -h
-ramdisk filepath

Bir ramdisk başlatma görüntüsü belirtir. Dosya adını ve mutlak yolu veya çalışma dizinine göreceli yolu belirtir.

Örneğin:

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

Bu seçeneği kullanmazsanız varsayılan olarak sistem dizinindeki ramdisk.img dosyası kullanılır. Daha fazla bilgi için AVD sistem dizini başlıklı makaleyi inceleyin.

-report-console socket

Emülasyonu başlatmadan önce konsol bağlantı noktasını uzak bir üçüncü tarafa bildirir. Otomatik test komut dosyası için yararlı olabilir. socket aşağıdaki biçimlerden birinde olmalıdır:

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

Daha fazla bilgi için Belirli seçeneklerle ilgili yardım bölümünde açıklandığı gibi -help-report-console seçeneğini kullanın.

-shell

Mevcut terminalde bir kök kabuk konsolu oluşturur. Bu seçenek, aşağıdaki yönlerden adb shell komutundan farklıdır:

  • Sistemin birçok bölümünü değiştirmenize olanak tanıyan bir kök kabuk oluşturur.
  • Emüle edilen sistemdeki adb daemon bozuk olsa bile çalışır.
  • Kabuk yerine emülatörü durdurmak için Control+C (veya macOS'te Command-C) tuşlarına basın.

Örneğin:

emulator @Pixel8_API_34 -shell
-snapshot name

Otomatik başlatma ve kaydetme işlemleri için anlık görüntü depolama dosyasındaki bir anlık görüntünün adını belirtir.

Emülatör, tam bir başlatma sırası yürütmek yerine yürütmeye önceki bir durum anlık görüntüsünden devam edebilir. Bu genellikle çok daha hızlıdır. Bu seçeneği sağladığınızda, emülatör bu ada sahip anlık görüntüyü anlık görüntü resminden yükler ve çıkışta aynı adla geri kaydeder.

Bu seçeneği kullanmazsanız varsayılan olarak tam başlatma sırası uygulanır. Belirtilen anlık görüntü yoksa bunun yerine emülatör tam bir başlatma sırası gerçekleştirir ve kaydetme işlemi yapar.

Anlık görüntü depolama dosyası ve varsayılan dosya belirtme hakkında bilgi edinmek için -snapstorage seçeneğine bakın.

emulator @Pixel8_API_34 -snapshot snapshot2

Anlık görüntü yükleme işlemi sırasında sistemin tüm içeriklerinin, kullanıcı verilerinin ve SD kart görüntülerinin, anlık görüntü oluşturulduğundaki içeriklerle üzerine yazılacağını unutmayın. Bu bilgileri farklı bir anlık görüntüye kaydetmediğiniz sürece o zamandan beri yapılan değişiklikler kaybolur.

Ayrıca, avd snapshot save name komutunu kullanarak emülatör konsolundan da anlık görüntü oluşturabilirsiniz. Daha fazla bilgi için Send Emulator console commands (Emulator konsol komutları gönderme) başlıklı makaleyi inceleyin.

-snapshot-list

Kullanılabilir anlık görüntülerin listesini gösterir. Bu komut, emülatörün başlatıldığı anlık görüntü depolama dosyasında depolanan anlık görüntülerin tablosunu yazdırır ve ardından çıkar. -snapstorage file de belirtirseniz bu komut, dosyada depolanan anlık görüntülerin tablosunu yazdırır.

Örneğin:

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

Çıktıdaki ID ve TAG sütun değerlerini -snapshot seçeneği için bağımsız değişken olarak kullanabilirsiniz.

-snapstorage filepath

Tüm durum anlık görüntülerini içeren bir depo dosyası belirtir. Yürütme sırasında oluşturulan tüm anlık görüntüler bu dosyaya kaydedilir. Yalnızca bu dosyada bulunan anlık görüntüler, emülatör çalıştırılırken geri yüklenebilir.

Örneğin:

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

Bu seçeneği belirtmezseniz varsayılan olarak veri dizinindeki snapshots.img kullanılır. Belirtilen dosya yoksa emülatör başlatılır ancak durum anlık görüntülerini kaydetme veya yükleme desteği olmadan çalışır.

-sysdir dir

Mutlak yol kullanarak bir sistem dizini belirtir. Daha fazla bilgi için AVD sistem dizini başlıklı makaleyi inceleyin. Örneğin:

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

Başlangıç sistem dosyasını belirtir. Dosya adını ve mutlak yolu veya çalışma dizinine göreli yolu sağlar.

Örneğin:

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

Bu seçeneği kullanmazsanız varsayılan olarak sistem dizinindeki system.img dosyası kullanılır. Daha fazla bilgi için AVD sistem dizini başlıklı makaleyi inceleyin.

-writable-system

Emülasyon oturumunuz sırasında yazılabilir bir sistem görüntüsüne sahip olmak için bu seçeneği kullanın. Bunu yapmak için:

  1. -writable-system seçeneğiyle sanal cihaz başlatın.
  2. Bir komut terminalinden adb remount komutunu girerek emülatöre system/ öğesini okuma/yazma olarak yeniden bağlamasını söyleyin. Varsayılan olarak salt okunur şekilde bağlanır.

Bu işaretin kullanılması, sistem görüntüsünün geçici bir kopyasını oluşturur. Bu kopya birkaç yüz MB'a kadar çok büyük olabilir ancak emülatör çıktığında silinir.

Kullanımdan kaldırılan seçenekler

Aşağıdaki komut satırı seçeneklerinin desteği sonlandırılmıştır:

  • -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

Komut satırı seçenekleri hakkında yardım alma

Bu bölümde, komut satırı seçenekleriyle ilgili nasıl yardım alabileceğiniz açıklanmaktadır. Emülatörü başlattığınızda kullanılabilen, en çok tercih edilen emülatör komut satırı seçenekleri hakkında daha ayrıntılı bilgi sağlar.

Tüm emülatör seçeneklerini listeleme

Kısa bir açıklama da dahil olmak üzere tüm emülatör seçeneklerinin listesini yazdırmak için aşağıdaki komutu girin:

emulator -help

Belirli bir seçenekle ilgili ayrıntılı yardım alma

Belirli bir başlangıç seçeneğiyle ilgili yardım içeriğini yazdırmak için aşağıdaki komutu girin:

emulator -help-option

Örneğin:

emulator -help-netspeed

Bu yardım, -help seçeneğinin sağladığı açıklamadan daha ayrıntılıdır.

Tüm seçenekler için ayrıntılı yardım alma

Tüm emülatör seçenekleriyle ilgili ayrıntılı yardım almak için aşağıdaki komutu girin:

emulator -help-all

Liste emülatörü ortam değişkenleri

Emülatör ortam değişkenlerinin listesini almak için aşağıdaki komutu girin:

emulator -help-environment

Sanal cihazı başlatmadan önce terminal penceresinde ortam değişkenlerini ayarlayabilir veya işletim sistemindeki kullanıcı ayarlarınız üzerinden ayarlayabilirsiniz. Örneğin, Linux'taki .bashrc dosyanızda ayarlayın.

Hata ayıklama etiketlerini listeleme

-debug seçenekleriyle ilgili etiketlerin listesini yazdırmak için aşağıdaki komutu girin:

emulator -help-debug-tags

-debug seçenekleri, etiketlerde belirtildiği gibi belirli emülatör bileşenlerinden gelen hata ayıklama mesajlarını etkinleştirmenize veya devre dışı bırakmanıza olanak tanır.