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

Android SDK, bir Android cihaz emülatörü (bilgisayarınızda çalışan bir sanal cihaz) içerir. Android Emülatör, fiziksel bir cihaz kullanmadan Android uygulamaları geliştirmenizi ve test etmenizi sağlar.

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

Emülatörü başlat

Projenizi çalıştırmaya veya AVD Manager üzerinden başlatmaya alternatif olarak emülatörü başlatmak için emulator komutunu kullanın.

Sanal cihazı bir terminal isteminden başlatmak için temel komut satırı söz dizimini burada bulabilirsiniz:

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

Ya da

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

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

/Users/janedoe/Library/Android/sdk/emulator/emulator -avd Nexus_5X_API_23 -netdelay none -netspeed full

Başlatma seçeneklerini emülatörü başlattığınızda belirtebilirsiniz, ancak başladıktan sonra belirleyemezsiniz.

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

emulator -list-avds

Android ana dizininizdeki AVD adlarının bir listesini görüntülemek için bu seçeneği kullanın. Tüm yapılandırma ve ortalama görüntüleme süresi içeriğinin 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.

Ortam değişkenini, sanal bir cihazı başlatmadan önce terminal penceresinde veya işletim sistemindeki kullanıcı ayarlarınızdan ayarlayabilirsiniz. Örneğin, Linux'taki .bashrc dosyanızda.

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

Uygulama yükleme

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

adb uygulamasını kullanarak uygulamanızı yüklemek, çalıştırmak ve test etmek için şu genel adımları uygulayın:

  1. Uygulamanızı derleyip Uygulamanızı oluşturma ve çalıştırma bölümünde açıklandığı gibi bir APK olarak paketleyin.
  2. Önceki bölümde açıklandığı gibi, gerekli başlatma seçeneklerini kullanarak emülatörü komut satırından 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 gerektiğinde komut vermek için Emülatör konsolunu kullanabilirsiniz.

Bir uygulamanın yüklemesini kaldırmak için bu işlemi bir Android cihazda yaptığınız gibi yapın.

Sanal cihaz, yeniden başlatma sırasında uygulamayı ve durum verilerini kullanıcı verileri disk bölümünde (userdata-qemu.img) korur. Bu verileri temizlemek için emülatörü -wipe-data seçeneğiyle başlatın veya AVD Manager'daki verileri silin. Kullanıcı verileri bölümü ve diğer depolama alanları hakkında daha fazla bilgi edinmek 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üntüler. Bu nedenle, install gibi bazı yaygın adb komutlarıyla -d işaretini kullanmanız gerekebilir. -d işareti, birkaç bağlı cihazdan hangisinin bir komutun hedefi olarak kullanılacağını belirtmenizi sağlar. -d belirtmezseniz emülatör, listesindeki ilk cihazı hedefler.

Varsayılan dizinleri ve dosyaları anlama

Emülatör, ilişkili dosyaları kullanır. Bunlar arasından AVD sistemi ve veri dizinleri en önemlisidir. Genellikle varsayılan dizinleri veya dosyaları değiştirmeniz gerekmese de, komut satırı seçeneklerini belirtirken emülatör dizin yapısını ve dosyaları anlamak yararlı olur.

Android Emülatör, Hızlı Emülatör (QEMU) hipervizörünü kullanır. Android Emülatör'ün ilk sürümleri QEMU 1 (goldfish) ve sonraki sürümleri QEMU 2 (ranchu) kullanıyor.

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 ortalama görüntüleme süresi (AVD) tarafından paylaşılan platforma özel, salt okunur dosyalar bulunur. Varsayılan konumlar aşağıdaki gibidir:

  • macOS ve Linux - ~/Library/Android/sdk/system-images/android-apiLevel/variant/arch/
  • Microsoft Windows XP - C:\Documents and Settings\user\Library\Android\sdk\system-images\android-apiLevel\variant\arch\
  • Windows Vista - C:\Users\user\Library\Android\sdk\system-images\android-apiLevel\variant\arch\

Nerede:

  • apiLevel, sayısal bir API düzeyi veya önizleme sürümleridir. Örneğin android-M, Android Marshmallow önizlemesini gösterir. Yayınlanmada, android-23 tarafından tanımlanan API düzeyi 23 olmuştur.
  • 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.

Ortalama görüntüleme süresi 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, en son sürüm olan QEMU 2 emülatörüdür. -kernel
ramdisk.img Önyükleme bölümü görüntüsü. Bu, başlangıçta sistem görüntüsü eklenmeden önce çekirdek tarafından yüklenen system.img alt kümesidir. Genellikle sadece birkaç ikili program ve başlatma komut dosyası içerir. -ramdisk
system.img Sistem görüntüsünün salt okunur ilk sürümü. Daha açık belirtmek gerekirse, API düzeyi ve varyantına karşılık gelen sistem kitaplıklarını ve verileri içeren bölüm. -system
userdata.img Öykünülen sistemde data/ olarak görünen ve ortalama görüntüleme süresi için tüm yazılabilir verileri içeren veri bölümünün ilk sürümü. Yeni bir AVD oluşturduğunuzda veya ‑wipe-data seçeneğini kullandığınızda emülatör bu dosyayı kullanır. Daha fazla bilgi için aşağıdaki bölümde yer alan userdata-qemu.img dosyası açıklamasına bakın. -initdata
-init-data

AVD veri dizini

İçerik dizini olarak da adlandırılan AVD veri dizini, tek bir ortalama görüntüleme süresi örneğine özeldir ve ortalama görüntüleme süresi için değiştirilebilir tüm verileri içerir.

Varsayılan konum aşağıdaki şekildedir; burada name, ortalama görüntüleme adıdır:

  • macOS ve Linux - ~/.android/avd/name.avd/
  • Microsoft Windows XP - C:\Documents and Settings\user\.android\name.avd\
  • Windows Vista 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

Öykünülen sistemde data/ olarak görünen veri bölümünün içeriği. Yeni bir AVD oluşturduğunuzda veya AVD'yi fabrika varsayılanlarına sıfırlamak için -wipe-data seçeneğini kullandığınızda emülatör, bu dosyayı oluşturmak için userdata.img dosyasını sistem dizinine kopyalar.

Her sanal cihaz örneği, kullanıcı ve oturuma özgü verileri depolamak için yazılabilir bir kullanıcı verisi görüntüsü kullanır. Örneğin, resmi benzersiz bir kullanıcının yüklü uygulama verilerini, ayarlarını, veritabanlarını ve dosyalarını depolamak için kullanır. Her kullanıcı, kendi oluşturduğu ortalama görüntüleme sayısına (AVD) ait veri dizinlerini depolayan farklı bir ANDROID_SDK_HOME dizinine sahiptir. Her ortalama görüntüleme süresi tek bir userdata-qemu.img dosyasına sahiptir.

-data
cache.img Öykünülen sistemde cache/ olarak görünen önbellek bölümü görüntüsü. Ortalama görüntüleme süresini ilk kez oluşturduğunuzda veya -wipe-data seçeneğini kullandığınızda boş olur. Bu dosya, geçici indirme dosyalarını depolar ve indirme yöneticisi ile bazen sistem tarafından doldurulur. Örneğin, tarayıcı bunu, emülatör çalışırken indirilen web sayfalarını ve resimleri önbelleğe almak için kullanır. Sanal cihazı kapattığınızda dosya silinir. -cache seçeneğini kullanarak dosyanın kalıcı olmasını sağlayabilirsiniz. -cache
sdcard.img

(İsteğe bağlı) Sanal bir cihaz üzerinde SD kartı simüle etmenize olanak tanıyan bir SD kart bölümlendirme görüntüsü. SD kart görüntü dosyasını AVD Yöneticisi'nde veya mksdcard aracını kullanarak oluşturabilirsiniz. Dosya, geliştirme bilgisayarınızda depolanır ve başlangıçta yüklenmelidir.

AVD Manager'da ortalama görüntüleme süresi (AVD) tanımlarken, otomatik olarak yönetilen bir SD kart dosyasını veya mksdcard aracıyla oluşturduğunuz bir dosyayı kullanabilirsiniz. Bir AVD ile ilişkilendirilmiş sdcard.img dosyasını AVD Manager'da görüntüleyebilirsiniz. -sdcard seçeneği, ortalama görüntüleme süresinde belirtilen SD kart dosyasını geçersiz kılar.

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

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

Emülatör dosyayı bir bayt havuzu olarak değerlendirir, böylece SD kart biçimi önemli olmaz.

-wipe-data seçeneği bu dosyayı etkilemez. Dosyayı temizlemek istiyorsanız dosyayı silin ve ardından AVD Manager veya mksdcard aracını kullanarak yeniden oluşturun. Dosyanın boyutunun değiştirilmesi de dosyayı siler ve yeni bir dosya oluşturur.

-sdcard

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

Dosyaların nerede bulunduğunu iki şekilde keşfedebilirsiniz:

  • Emülatörü komut satırından başlattığınızda -verbose veya -debug init seçeneğini kullanın. Sonuca bakın.
  • Varsayılan 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şlatma seçenekleri

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

Not: Android Emülatör, daha güvenilir hale getirmek için sürekli olarak geliştirilmektedir. Çeşitli komut satırı seçenekleriyle ilgili olarak bildirilen sorunların durumunu görmek ve hataları bildirmek için Android Issue Tracker'a bakın.

Sık kullanılan seçenekler

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

Tablo 3. Yaygın olarak kullanılan komut satırı seçenekleri

Komut satırı seçeneği Açıklama
Hızlı Başlatma
-no-snapshot-load Soğuk başlatma gerçekleştirilir ve çıkışta emülatör durumunu kaydeder.
-no-snapshot-save Mümkünse hızlı bir başlatma gerçekleştirilir, ancak çıkışta emülatör durumunu kaydetmez.
-no-snapshot Hızlı Başlatma ö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 işlem, ortalama görüntüleme süresindeki 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.
  • webcamn - Emülatör, geliştirme bilgisayarınıza bağlı ve sayıyla belirtilen bir web kamerası kullanır. Web kameralarının listesi için -webcam-list seçeneğini kullanın. Örneğin, webcam0.
  • none - Sanal cihazdaki kamerayı devre dışı bırakır.

Örneğin:

emulator @Nexus_5X_API_23 -camera-back webcam0

-webcam-list Geliştirme bilgisayarınızda emülasyon için kullanılabilecek web kameralarını listeler. Örneğin:
emulator @Nexus_5X_API_23 -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. İkinci webcam0, geliştirme bilgisayarındaki işletim sistemi tarafından kullanılan addır. İkinci ad, işletim sistemine bağlı olarak değişiklik gösterir.

SDK Araçları 25.2.4'ten itibaren AVD adı zorunludur.

Disk resimleri ve bellek
-memory size

Fiziksel RAM boyutunu belirtir (128 ile 4.096 MB arasında). Örneğin:

emulator @Nexus_5X_API_23 -memory 2048

Bu değer, ortalama görüntüleme süresini 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 @Nexus_5X_API_23 -sdcard C:/sd/sdcard.img

Dosya bulunmazsa emülatör bir SD kart olmadan da başlatılır. Komut, SD Kart Görüntüsü Yok uyarısını döndürür.

Bu seçeneği belirlemezseniz ve AVD farklı bir şey belirtmediği sürece veri dizininde varsayılan olarak sdcard.img kullanılır. Öykünülen SD kartlarla ilgili ayrıntılı bilgi için AVD veri dizini konusuna bakın.

-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ığındaki durumuna döndürür. Yüklü tüm uygulamalar ve ayarlar kaldırılır. Örneğin:

emulator @Nexus_5X_API_23 -wipe-data

Varsayılan olarak, kullanıcı verileri dosyası userdata-qemu.img, başlangıç veri dosyası ise 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 adlı bölüme bakın.

Hata ayıklama
-debug tags Bir veya daha fazla etiket için hata ayıklama mesajlarının görüntülenmesini etkinleştirir ya da devre dışı bırakır. Birden çok etiketi boşluk, virgül veya sütunla ayırın. Örneğin:

$ emulator @Nexus_5X_API_23 -debug init,metrics

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

-debug all,-socket,-metrics

Etiket ve açıklama 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. socket ve gles etiketlerinin nasıl belirtileceğini gösteren bir örneği burada bulabilirsiniz:

ANDROID_VERBOSE=socket,gles

Şuna 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. Hata ayıklama mesajı türünü devre dışı bırakmak için no formunu kullanın. Örneğin:

emulator @Nexus_5X_API_23 -debug-all -debug-no-metrics

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

-logcat logtags Bir veya daha fazla etiket için Logcat mesajlarının görüntülenmesini etkinleştirir ve bunları terminal penceresine yazar. Örneğin, aşağıdaki komut tüm bileşenlerden hata mesajlarını etkinleştirir:

emulator @Nexus_5X_API_23 -logcat *:e

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

logLevel şu değerlerden biridir:

  • v - ayrıntılı
  • d - hata ayıklama
  • i - bilgilendirici
  • w - uyarı günlük düzeyi
  • e - hata
  • s - sessiz

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

emulator @Nexus_5X_API_23 -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ımlanır ve boş değilse emülatör, Logcat çıkışını varsayılan olarak terminale etkinleştirmek için bu değerin değerini kullanır. Ayrıca aynı veya diğer günlük mesajlarını, adb aracılığıyla terminale yönlendirebilirsiniz.

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

-show-kernel Terminal penceresinde çekirdek hata ayıklama mesajlarını görüntüler. Örneğin:

emulator @Nexus_5X_API_23 -show-kernel

Bu seçenek, önyükleme işleminin düzgün şekilde çalıştığını kontrol etmek için kullanılır.

-verbose Emülatör başlatma mesajlarını terminal penceresine yazdırır. Örneğin:

emulator @Nexus_5X_API_23 -verbose

Ortalama görüntüleme süresinde tanımlanmış bir sanal cihaz başlatılırken aslında hangi dosyaların ve ayarların seçildiğini gösterir. Bu seçenek, -debug-init belirtilmesi ile aynıdır.

-dns-server servers Belirtilen DNS sunucularını kullanır. servers, en fazla dört DNS sunucu adı veya IP adresinden oluşan virgülle ayrılmış bir listedir. Örneğin:
emulator @Nexus_5X_API_23 -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 sunuculara doğrudan bağlanmasını sağlamak için emüle 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 Tüm TCP bağlantılarını belirtilen bir HTTP/HTTPS proxy üzerinden 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 @Nexus_5X_API_23 -http-proxy myserver:1981

proxy şunlardan 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 otomatik olarak proxy biçimiyle eşleşen tüm değerleri kullanır. Daha fazla bilgi için Emülatörü proxy ile kullanma bölümüne bakın.

-netdelay delay

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

  • gsm - GSM/CSD (min. 150, maks. 550).
  • hscsd - HSCSD (min. 80, maks. 400).
  • gprs - GPRS (min. 35, maks. 200).
  • edge - EDGE/EGPRS (min. 80, maks. 400).
  • umts - UMTS/3G (min. 35, maks. 200).
  • hsdpa - HSDPA (min. 0, maks. 0).
  • lte - LTE (min. 0, maks. 0).
  • evdo - EVDO (min. 0, maks. 0).
  • none - Gecikme yok, varsayılan (min. 0, maks. 0).
  • num - Tam gecikmeyi belirtir.
  • min:max - Bağımsız minimum ve maksimum gecikmeleri belirtir.

Örneğin:

emulator @Nexus_5X_API_23 -netdelay gsm

Emülatör, ağ sınırlamanın yanı sıra daha yüksek bağlantı gecikmelerini de destekler. Dış görünüm yapılandırmasından veya ‑netspeed ve -netdelay seçenekleriyle tanımlayabilirsiniz.

-netfast Ağ daraltmayı devre dışı bırakır. Örneğin:

emulator @Nexus_5X_API_23 -netfast

Bu seçenek, -netspeed full -netdelay none değerinin belirtilmesiyle aynıdır. Bunlar, bu seçenekler için varsayılan değerlerdir.

-netspeed speed

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

  • gsm - GSM/CSD (yukarı: 14,4, aşağı: 14,4).
  • hscsd - HSCSD (yukarı: 14,4, aşağı: 57,6).
  • gprs - GPRS (artı: 28,8, düşüş: 57,6).
  • edge - EDGE/EGPRS (artı: 473,6, düşüş: 473,6).
  • umts - UMTS/3G (yukarı: 384,0, aşağı: 384,0).
  • hsdpa - HSDPA (yukarı: 5760,0, aşağı: 13.980,0).
  • lte - LTE (yukarı: 58.000, aşağı: 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 - Bağımsız yukarı ve aşağı hızları belirtir.

Örneğin:

emulator @Nexus_5X_API_23 -netspeed edge

Emülatör, ağ sınırlamanın yanı sıra daha yüksek bağlantı gecikmelerini de destekler. Dış görünüm yapılandırmasından veya ‑netspeed ve -netdelay seçenekleriyle tanımlayabilirsiniz.

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

emulator @Nexus_5X_API_23 -port 5556

Makinenizde çalışan ilk sanal cihaz örneği için varsayılan değer 5554'tür. Sanal cihaz, normalde bir konsol bağlantı noktası ve bir adb bağlantı noktası olmak üzere bitişik iki bağlantı noktasını kaplar. Belirli bir makinede çalışan ilk sanal cihazın konsolunda, konsol bağlantı noktası 5554 ve adb bağlantı noktası 5555 kullanılır. Sonraki örneklerde bağlantı noktası numaraları iki artışla kullanılır. Örneğin, 5556/5557, 5558/5559 vb. Aralık 5.554 ile 5.682 arasındadır. 64 eşzamanlı sanal cihaza izin verilir.

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

‑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 herhangi bir sorun varsa sizi uyarır. Emülatör kullanıcı arayüzünde, pencere başlığında konsol bağlantı noktası numarasını görebilir ve Yardım > Hakkında'yı seçerek adb bağlantı noktası numarasını görüntüleyebilirsiniz.

port değeri çift değilse ve 5554 ile 5584 aralığındaysa adb server emülatörden sonra başlıyorsa adb devices komutunu kullandığınızda sanal cihazın başlatılacağını ancak görünür olmayacağını unutmayın. Bu nedenle, konsol bağlantı noktası numarasının çift olmasını öneririz.

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

emulator @Nexus_5X_API_23 -ports 5556,5559

Geçerli bağlantı noktası aralığı 5554-5682 olup 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 herhangi bir sorun varsa uyarı verir.

Mümkün olduğunda 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 @Nexus_5X_API_23 -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ırmayı yapılandırır. Örneğin:

emulator @Nexus_5X_API_23 -accel auto

Hızlandırılmış emülasyon yalnızca x86 ve x86_64 sistem görüntüleri için çalışır. Linux'ta KVM kullanır. Windows ve Mac'te Intel CPU ve Intel HAXM sürücüsünü kullanır. Bir x86 veya x86_64 cihazı öykünmüyorsanız bu seçenek yoksayılır.

mode için geçerli değerler şunlardır:

  • auto: Hızlandırmanın desteklenip desteklenmediğini otomatik olarak belirler ve mümkün olduğunda bunu kullanır (varsayılan).
  • off - Öncelikli olarak hata ayıklamada yararlı olan hızlandırmayı tamamen devre dışı bırakır.
  • on - Hızlanmayı zorunlu kılar. KVM veya HAXM yüklü ya da kullanılabilir değilse emülatör başlamaz ve bir hata mesajı yazdırmaz.

Daha fazla bilgi için Android Emülatör için donanım hızlandırmayı yapılandırma konusuna bakın.

-accel-check Emülatör sanal makine hızlandırma 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 yüklü olup olmadığını kontrol etme bölümüne bakın.

-engine engine

Emülatör motorunu belirtir:

  • auto - Otomatik olarak bir motor seçer (varsayılan).
  • classic - Eski QEMU 1 motorunu kullanır.
  • qemu2: Daha yeni QEMU 2 motorunu kullanır.

Örneğin:

emulator @Nexus_5X_API_23 -engine auto

Otomatik algılama, belirli bir ortalama görüntüleme süresini emüle ederken en iyi performansı sağlayacak değeri seçmelidir. -engine seçeneğini yalnızca hata ayıklama ve karşılaştırma amacıyla kullanın.

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

emulator @Nexus_5X_API_23 -gpu swiftshader_indirect

Daha fazla bilgi için Grafik hızlandırmayı yapılandırma konusuna bakın.

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

emulator @Nexus_5X_API_23 -no-accel

Daha fazla bilgi için Android Emülatör için donanım hızlandırmayı yapılandırma konusuna bakın.

-nojni
-no-jni
Android Dalvik veya ART çalışma zamanında genişletilmiş Java Yerel Arayüzü (JNI) kontrollerini devre dışı bırakır. Örneğin:

emulator @Nexus_5X_API_23 -nojni

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

-selinux {disabled|permissive} Security-Enhanced Linux (SELinux) güvenlik modülünü Linux işletim sisteminde disabled veya permissive moduna ayarlar. Örneğin:

me-linux$ emulator @Nexus_5X_API_23 -selinux permissive

Varsayılan olarak SELinux enforcing modundadır. Diğer bir deyişle, güvenlik politikası uygulanır. permissive modu, SELinux politikasını yükler ancak uygulamayı uygulamaz. Bu seçenek yalnızca politika ihlallerini günlüğe 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 @Nexus_5X_API_23 -timezone Europe/Paris

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

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

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

-version Emülatör sürüm numarasını görüntüler. Örneğin:

emulator @Nexus_5X_API_23 -version

Ya da

emulator -version

Kullanıcı arayüzü
-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 @Nexus_5X_API_23 -no-boot-anim

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

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

emulator @Nexus_5X_API_23 -screen no-touch

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

  • touch - Dokunmatik ekran emülasyonu yapar (varsayılan).
  • multi-touch - Çoklu dokunma özellikli bir ekran emülasyonu yapar.
  • no-touch - Dokunma ve çoklu dokunma ekran emülasyonunu devre dışı bırakır.

Gelişmiş seçenekler

Aşağıdaki tabloda yer alan komut satırı başlatma seçenekleri mevcuttur ancak ortalama bir uygulama geliştiricisi tarafından yaygın olarak kullanılmamaktadır.

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

Bu seçeneklerden bazıları harici uygulama geliştiricileri için uygundur ve bir kısmı öncelikli olarak platform geliştiricileri tarafından kullanılır. Uygulama geliştiriciler Android uygulamaları oluşturup bunları belirli ortalama görüntüleme sayılarında çalıştırır. Platform geliştiricileri, Android sisteminde çalışır ve bunu, önceden oluşturulmuş bir ortalama görüntüleme süresi olmadan emülatörün içinde ç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ına sahip önyüklemeyi etkinleştirir. Bazı Android sistem görüntülerinde, önyükleme grafiği oluşturma olanağını entegre eden değiştirilmiş bir başlatma sistemi vardır. Bu seçenekle sisteme bir başlatma grafiği zaman aşımı süresi iletebilirsiniz. Başlatma sisteminizde önyükleme grafiği etkin değilse bu seçeneğin hiçbir işlevi yoktur. Bu seçenek özellikle harici uygulama geliştiricileri için değil, platform geliştiricileri için yararlıdır.

Örneğin:

emulator @Nexus_5X_API_23 -bootchart 120
-cache filepath

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

Örneğin:

emulator @Nexus_5X_API_23 -cache
   ~/.android/avd/Nexus_5X_API_23.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'ne bakın.

-cache-size size

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

Örneğin:

emulator @Nexus_5X_API_23 -cache-size 1000

Bu seçeneği belirtmezseniz varsayılan değer 66 MB'tır. Normalde çoğu uygulama geliştirici, varsayılan önbellekten daha büyük olan çok büyük dosyalar indirmeleri gerekmediği sürece bu seçeneğe ihtiyaç duymaz. Önbellek dosyası hakkında daha fazla bilgi için AVD veri dizini konusuna bakın.

-data filepath

Kullanıcı veri bölümü görüntü dosyasını ayarlar. Kalıcı bir kullanıcı verisi dosyası oluşturmak için dosya adı ve çalışma dizinine göre mutlak bir yol ya da yol sağlar. Dosya mevcut değilse emülatör, varsayılan userdata.img dosyasından bir görüntü oluşturur, dosyayı belirttiğiniz dosya adında depolar ve kapatma sırasında kullanıcı verilerini bu dosyada saklar.

Örneğin:

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

Bu seçeneği kullanmazsanız varsayılan olarak userdata-qemu.img adlı bir dosya olur. Kullanıcı verileri dosyası hakkında daha fazla bilgi için AVD veri dizini sayfasına bakın.

-datadir dir

Mutlak yol kullanarak bir veri dizini belirtir. Daha fazla bilgi için AVD veri dizini konusuna bakın.

Örneğin:

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

64 bit platformlarda 32 bit emülatörü kullanır. Bazen bu seçenek test veya hata ayıklama için yararlı olur. Örneğin, emülatörün bazen 64 bit Windows'da değil, 32 bit çalışmasıyla ilgili bir sorun vardı. Bu seçenek, sorunun hatalarını ayıklamak amacıyla karşılaştırmalar yapmak için faydalı oldu. Bir örnek verelim:

emulator @Nexus_5X_API_23 -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ştiricileriyle alakalı bilgiler sağlar. Örneğin:

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

device karakterinin özellikleri hakkında yardım alır. Bazı emülatör seçenekleri için device parametresi gerekir. Ö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 ortalama görüntüleme süresi (AVD) için görüntü dosyalarının bulunduğu konum hakkında bilgi alır. Örneğin:

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

Platform geliştiricileriyle alakalı disk görüntüleri hakkında yardım alır. Ö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 temizlendikten sonra, emülatör ilk 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 çalışma dizinine göre mutlak bir yol veya yol belirtir.

Örneğin:

emulator @Nexus_5X_API_23 -initdata
   ~/Library/Android/sdk/system-images/android-23/
   google_apis/x86/userdata-test.img

Yol belirtmezseniz dosya sistem dizinine yerleştirilir. Daha fazla bilgi için AVD sistem dizini konusuna bakın.

-kernel filepath

Belirli bir emüle edilmiş çekirdeği kullanır. 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 @Nexus_5X_API_23 -kernel
   ~/Library/Android/sdk/system-images/android-23/
   google_apis/x86/kernel-test.img -show-kernel

Bu seçeneği belirtmezseniz varsayılan olarak kernel-ranchu kullanılır. Daha fazla bilgi için AVD sistem dizini konusuna bakın.

-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ı engellemek gibi farklı belirtilere neden olan hatalı ses sürücüleri bulunur. Bu durumda, sorunu gidermek 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 @Nexus_5X_API_23 -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ştiricileri içindir. Daha fazla bilgi için AVD veri dizini sayfasına bakın.

Örneğin:

emulator @Nexus_5X_API_23 -nocache
-no-snapshot

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

Örneğin:

emulator @Nexus_5X_API_23 -no-snapshot
-no-snapshot-load

Emülatörün anlık görüntü deposundan AVD durumunu yüklemesini engeller. Tam önyükleme gerçekleştirir.

Örneğin:

emulator @Nexus_5X_API_23 -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 da tüm değişikliklerin kaybedileceği anlamına gelir.

Örneğin:

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

Anlık görüntü geri yükleme sırasında ortalama görüntüleme süresini hemen düzeltmeye çalışmaz. Bu seçenek, ani zaman atlamalarını önlediğinden test sırasında yararlı olabilir. Zaman güncellemeleri ortalama 15 saniyede bir AVD'ye gönderilmeye devam eder.

Örneğin:

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

Emülatörü, durum anlık görüntülerini depolamak veya yüklemek için bir dosya eklemeden başlatır, tam önyüklemeyi 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 @Nexus_5X_API_23 -no-snapstorage
-no-window

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

emulator @Nexus_5X_API_23 -no-window
-partition-size size

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

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

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

emulator @Nexus_5X_API_23 -prop qemu.name=value -prop qemu.abc=xyz
-qemu args Bağımsız değişkenleri QEMU emülatör yazılımına iletir. QEMU 1 ve QEMU 2'nin farklı bağımsız değişkenler kullanabileceğini unutmayın. Bu seçeneği kullanırken, belirtilen son seçenek olduğundan emin olun. Çünkü, seçenek QEMU'ya özel seçenekler olarak yorumlandıktan sonraki tüm seçeneklerdir. Bu seçenek oldukça gelişmiştir ve yalnızca QEMU ve Android emülasyonuna çok aşina olan geliştiriciler tarafından kullanılmalıdır.
-qemu -h

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

emulator -qemu -h
-ramdisk filepath

Ramdisk önyükleme görüntüsünü belirtir. Dosya adını ve mutlak yolu veya çalışma dizinine göre bir yolu belirtir.

Örneğin:

emulator @Nexus_5X_API_23 -ramdisk
   ~/Library/Android/sdk/system-images/android-23/
   google_apis/x86/ramdisk-test.img

Bu seçeneği kullanmazsanız sistem dizinindeki varsayılan, ramdisk.img dosyası olur. Daha fazla bilgi için AVD sistem dizini konusuna bakın.

-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 birini kullanmalıdır:

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

Daha fazla bilgi edinmek 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, şu 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.
  • Öykünülen 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 @Nexus_5X_API_23 -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 başlatma sırası yürütmek yerine, genellikle önemli ölçüde daha hızlı olan önceki bir durum anlık görüntüsünden yürütmeye devam edebilir. Bu seçeneği sağladığınızda emülatör, anlık görüntü görüntüsünden bu adın anlık görüntüsünü yükler ve çıkışta aynı adla tekrar kaydeder.

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

Anlık görüntü depolama dosyasını ve varsayılan dosyayı belirtmeyle ilgili bilgi için -snapstorage seçeneğine bakın.

emulator @Nexus_5X_API_23 -snapshot snapshot2

Bir anlık görüntü yüklenirken, anlık görüntü çekilirken barındırdıkları içeriklerin sistem, kullanıcı verileri ve SD kart görüntülerindeki tüm içeriklerin üzerine yazıldığını unutmayın. Bu bilgileri farklı bir anlık görüntüye kaydetmezseniz o zamandan beri yapılan değişiklikler kaybolur.

avd snapshot save name komutunu kullanarak emülatör konsolundan da anlık görüntü oluşturabilirsiniz. Daha fazla bilgi için Emülatör konsol komutları gönderme bölümüne bakın.

-snapshot-list

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

Örneğin:

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

Çıkıştaki Kimlik ve ETİKET sütunu değerlerini -snapshot seçeneği için bağımsız değişkenler olarak kullanabilirsiniz.

-snapstorage filepath

Tüm durum anlık görüntülerini içeren bir depo dosyasını belirtir. Yürütme sırasında oluşturulan tüm anlık görüntüler bu dosyaya kaydedilir. Emülatör çalışması sırasında yalnızca bu dosyadaki anlık görüntüler geri yüklenebilir.

Örneğin:

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

Bu seçeneği belirtmezseniz veri dizininde varsayılan olarak snapshots.img değeri 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 sunulmaz.

-sysdir dir

Mutlak yol kullanarak bir sistem dizinini belirtir. Daha fazla bilgi için AVD sistem dizini konusuna bakın. Örneğin:

emulator @Nexus_5X_API_23 -sysdir
   ~/Library/Android/sdk/system-images/android-23/
   google_apis/x86/test
-system filepath

İlk sistem dosyasını belirtir. Çalışma dizinine göre dosya adı ve mutlak bir yol veya yol sağlar.

Örneğin:

emulator @Nexus_5X_API_23 -system
   ~/Library/Android/sdk/system-images/android-23/
   google_apis/x86/system-test.img

Bu seçeneği kullanmazsanız sistem dizinindeki varsayılan, system.img dosyası olur. Daha fazla bilgi için AVD sistem dizini konusuna bakın.

-use-system-libs

Linux'ta emülatör sistemiyle birlikte verilen sürüm yerine libstdc++ sistemini kullanır. Bu seçeneği yalnızca emülatör normal şekilde başlamazsa kullanın ve her zaman çalışmayacağını unutmayın. Alternatif olarak ANDROID_EMULATOR_USE_SYSTEM_LIBS ortam değişkenini 1 olarak ayarlayın.

Örneğin:

me-linux$ emulator @Nexus_5X_API_23 -use-system-libs
-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 bir sanal cihaz başlatın.
  2. Emülatöre system/ uygulamasını okuma/yazma olarak yeniden eklemesini bildirmek için bir komut terminalinden adb remount komutunu girin. Varsayılan olarak salt okunur biçimde eklenir.

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

Desteği sonlandırılan seçenekler

Aşağıdaki komut satırı seçenekleri kullanımdan kaldırıldı:

  • -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çenekleri hakkında nasıl yardım alacağınız açıklanmaktadır. Emülatörü başlattığınızda kullanılabilen yaygın olarak kullanılan emülatör komut satırı seçenekleri hakkında daha ayrıntılı bilgiler sağlar.

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

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şlatma seçeneği ile ilgili yardımı 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 alın

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

emulator -help-all

Emülatör ortam değişkenlerini listeleme

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

emulator -help-environment

Bir sanal cihazı başlatmadan önce terminal penceresinde ortam değişkenlerini ayarlayabilir veya işletim sistemindeki kullanıcı ayarlarınızdan belirleyebilirsiniz. Örneğin, Linux'taki .bashrc dosyanızda ayarlayın.

Hata ayıklama etiketlerini listeleyin

-debug seçenekleri için bir etiket listesi yazdırmak üzere aşağıdaki komutu girin:

emulator -help-debug-tags

-debug seçenekleri, etiketlerde belirtildiği şekilde belirli emülatör bileşenlerinden hata ayıklama mesajlarını etkinleştirmenizi veya devre dışı bırakmanızı sağlar.