Çalışan her sanal cihaz, emüle edilen cihaz ortamını sorgulamanıza ve kontrol etmenize olanak tanıyan bir konsol sağlar. Örneğin, uygulamanız emülatörde çalışırken bağlantı noktası yeniden yönlendirme, ağ özellikleri ve telefon etkinliklerini yönetmek için konsolu kullanabilirsiniz.
Aşağıdaki komutlar için zaten çalışan bir emülatörünüzün olması gerekir. Emülatör çalıştırma hakkında daha fazla bilgi için Android Emülatör'de uygulama çalıştırma ve Emülatörü komut satırından başlatma konularına bakın.
Konsol oturumu başlatma ve durdurma
Konsola erişmek ve bir terminal penceresinden komut girmek için telnet
tuşlarını kullanarak konsol bağlantı noktasına bağlanın ve kimlik doğrulama jetonunuzu sağlayın. Konsolda Tamam ifadesi her görüntülendiğinde, komutlar kabul etmeye hazırdır. Tipik bir istem yok.
Çalışan bir sanal cihazın konsoluna bağlanmak için:
- Bir terminal penceresi açın ve aşağıdaki komutu girin:
- Konsolda
OK
gösterildikten sonraauth auth_token
komutunu girin. - Konsola bağlandıktan sonra konsol komutlarını girin.
- Konsol oturumundan çıkmak için
quit
veyaexit
yazın.
telnet localhost console-port
Emülatör pencere başlığı, ayrı bir pencerede çalışırken konsol bağlantı noktası numarasını listeler ancak bir araç penceresinde çalıştırma sırasında listelenmez. Örneğin, konsol bağlantı noktası 5554'ü kullanan bir emülatörün pencere başlığı Pixel8_API_34:5554
olabilir. Ayrıca, adb devices
komutu, çalışan sanal cihazların ve bunların konsol bağlantı noktası numaralarının listesini yazdırır. Daha fazla bilgi için Cihazlar için sorgulama bölümüne bakın.
Not: Emülatör, 5554 ile 5585 arasındaki bağlantı noktalarındaki bağlantıları dinler ve yalnızca localhost
kaynaklı bağlantıları kabul eder.
Konsol komutlarını girebilmeniz için emülatör konsolu kimlik doğrulama gerektirir. auth_token
, ana dizininizdeki .emulator_console_auth_token
dosyasının içeriğiyle eşleşmelidir.
Bu dosya mevcut değilse telnet localhost console-port
komutu, rastgele oluşturulmuş bir kimlik doğrulama jetonu içeren dosyayı oluşturur. Kimlik doğrulamayı devre dışı bırakmak için jetonu .emulator_console_auth_token
dosyasından silin veya yoksa boş bir dosya oluşturun.
Konsol komutlarının listesini görmek ve belirli komutlar hakkında bilgi edinmek için help
, help command
veya help-verbose
girin.
Aşağıda örnek bir oturum verilmiştir:
$ telnet localhost 5554 Trying ::1... telnet: connect to address ::1: Connection refused Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. Android Console: Authentication required Android Console: type 'auth <auth_token>' to authenticate Android Console: you can find your <auth_token> in '/Users/me/.emulator_console_auth_token' OK auth 123456789ABCdefZ Android Console: type 'help' for a list of commands OK help-verbose Android console command help: help|h|? Prints a list of commands help-verbose Prints a list of commands with descriptions ping Checks if the emulator is alive automation Manages emulator automation event Simulates hardware events geo Geo-location commands gsm GSM related commands cdma CDMA related commands crash Crashes the emulator instance crash-on-exit Simulates crash on exit for the emulator instance kill Terminates the emulator instance restart Restarts the emulator instance network Manages network settings power Power related commands quit|exit Quits control session redir Manages port redirections sms SMS related commands avd Controls virtual device execution qemu QEMU-specific commands sensor Manages emulator sensors physics Manages physical model finger Manages emulator finger print debug Controls the emulator debug output tags rotate Rotates the screen clockwise by 90 degrees screenrecord Records the emulator's display fold Folds the device unfold Unfolds the device multidisplay Configures the multi-display nodraw turn on/off NoDraw mode. (experimental) resize-display resize the display resolution to the preset size virtualscene-image customize virtualscene image for virtulscene camera proxy manage network proxy server settings phonenumber set phone number for the device try 'help <command>' for command-specific help OK exit Connection closed by foreign host.
Emülatör komut referansı
Aşağıdaki tabloda, emülatör konsol komutları parametreleri ve değerleriyle birlikte açıklanmaktadır:
Tablo 1. Emülatör konsol komutları
Genel komutlar | Açıklama |
---|---|
avd {stop|start|status|name}
|
Sanal cihazı aşağıdaki şekilde sorgular, kontrol eder ve yönetir:
|
avd snapshot {list|save name|load name|delete
name}
|
Cihaz durumunu aşağıdaki şekilde anlık görüntülere kaydeder ve geri yükler:
Aşağıdaki örnekte avd snapshot save firstactivitysnapshot |
fold
|
Cihaz katlanabilir ve o anda açılmışsa daha küçük ekran yapılandırmasını gösterecek şekilde katlanır. |
unfold
|
Katlanabilir cihaz ve şu anda katlanmış durumdaysa daha büyük ekran yapılandırmasını görüntülemek için cihazı açar. |
kill
|
Sanal cihazı sonlandırır. |
ping
|
Sanal cihazın çalışıp çalışmadığını kontrol eder. |
rotate
|
AVD'yi 45 derecelik artışlarla saat yönünün tersine döndürür. |
Emülatörü kilitle | Açıklama |
crash
|
Uygulama yürütülürken emülatörü kilitler. |
crash-on-exit |
Uygulamadan çıktığında emülatörü kilitler. |
Hata ayıklama etiketleri | Açıklama |
debug tags ...
|
Emülatörün belirli bölümlerinden hata ayıklama mesajlarını etkinleştirir veya devre dışı bırakır.
tags parametresi,
Aşağıdaki örnekte debug radio |
Bağlantı noktası yönlendirmesi | Açıklama |
redir list
|
Geçerli bağlantı noktası yönlendirmesini listeler. |
redir add protocol:host-port:guest-port
|
Aşağıdaki gibi yeni bir bağlantı noktası yönlendirmesi ekler:
|
redir del protocol:host-port
|
Bir bağlantı noktası yönlendirmesini siler.
|
Coğrafi konum | Açıklama |
Emülatöre bir GPS düzeltmesi göndererek emülatör içinde çalışan uygulamalara bildirilen coğrafi konumu ayarlar. Sanal cihaz çalışmaya başlar başlamaz aşağıdaki |
|
geo fix longitude latitude [altitude] [satellites] [velocity]
|
Emülatöre basit bir GPS düzeltmesi gönderir.
longitude ve latitude değerlerini ondalık dereceyle belirtin. Konumu belirlemek amacıyla kullanılacak satellites sayısını belirtmek için 1 ile 12 arasında bir sayı kullanın ve metre cinsinden altitude değerini, düğüm olarak da velocity değerini belirtin.
|
geo nmea sentence
|
Öykünülen cihaza, emülasyonlu bir GPS modeminden gönderilmiş gibi bir NMEA 0183 cümlesi gönderir. sentence uygulamasını "$GP" ile başlatın.
Şu anda yalnızca "$GPGGA" ve "$GPRCM" cümleleri desteklenmektedir. Aşağıdaki örnek, GPS alıcısı için zaman, konum ve düzeltme verilerini alan bir GPGGA (Küresel Konumlandırma Sistemi Düzeltme Verileri) cümlesidir:
geo nmea $GPGGA ,hhmmss.ss,llll.ll,a,yyyyy.yy,a,x,xx,x.x,x.x,M,x.x,M,x.x,xxxx |
Sahte donanım etkinlikleri | Açıklama |
event types
|
Tüm sahte etkinlik türlerini listeler. Kod içeren etkinliklerde, kod sayısı sağ tarafta parantez içinde listelenir.
event types event <type> can be an integer or one of the following aliases: EV_SYN EV_KEY (405 code aliases) EV_REL (2 code aliases) EV_ABS (27 code aliases) EV_MSC EV_SW (4 code aliases) EV_LED EV_SND EV_REP EV_FF EV_PWR EV_FF_STATUS EV_MAX OK |
event send types [types ...]
|
Bir veya daha fazla sahte etkinlik türü gönderir. |
event codes type
|
Belirtilen sahte etkinlik türü için etkinlik kodlarını listeler. |
event send type[:code]:[value] [...]
|
İsteğe bağlı kod ve kod değerleriyle birlikte bir veya daha fazla sahte etkinlik gönderir.
Tam olarak hangi etkinliğin gönderileceğini keşfetmek için emülatördeki düğmelere manuel olarak basarken Güç düğmesine bastığınızda oluşturulan etkinlikler şunlardır: adb shell getevent -lt /dev/input/event12: EV_KEY KEY_POWER DOWN /dev/input/event12: EV_SYN SYN_REPORT 00000000 /dev/input/event12: EV_KEY KEY_POWER UP /dev/input/event12: EV_SYN SYN_REPORT 00000000Örneğin, güç düğmesine uzun basmayı simüle etmek üzere tuş tuşu ve tuş tuşu için iki EV_KEY etkinliği gönderin:
event send EV_KEY:KEY_POWER:0 OK event send EV_KEY:KEY_POWER:1 OK |
event text message
|
Tuşları simüle eden bir karakter dizesi gönderir. Bu ileti bir UTF-8 dizesi olmalıdır. Unicode yayınları, cihazın mevcut klavyesine göre ters eşlenir ve desteklenmeyen karakterler sessiz bir şekilde silinir. |
Güç durumu kontrolleri | Açıklama |
power display
|
Pil ve şarj cihazı durumunu gösterir. |
power ac {on|off}
|
AC şarj durumunu on veya off olarak ayarlar.
|
power status {unknown|charging|discharging|not-charging|full}
|
Pil durumunu belirtildiği şekilde değiştirir. |
power present {true|false}
|
Pil varlığı durumunu ayarlar. |
power health {unknown|good|overheat|dead|overvoltage|failure}
|
Pil sağlığı durumunu ayarlar. |
power capacity percent
|
Kalan pil kapasitesi durumunu 0 ile 100 arasında bir yüzde değeri olarak ayarlar. |
Ağ bağlantısı durumu | Açıklama |
network status
|
Ağ durumunun yanı sıra mevcut gecikme ve hız özelliklerini kontrol eder. |
network delay latency
|
Emüle edilen ağ gecikmesini değiştirir. Emülatör, çeşitli ağ gecikmesi düzeylerini simüle etmenize olanak tanır. Böylece uygulamanızı, gerçek çalışma koşullarına daha uygun olan bir ortamda test edebilirsiniz. Emülatör başlatılırken gecikme seviyesi veya aralığı ayarlayabilir ya da uygulama emülatörde çalışırken gecikmeyi değiştirmek için konsolu kullanabilirsiniz. latency ağının biçimi aşağıdakilerden biridir (sayılar milisaniyedir): Ağ gecikmesi biçimi:
Emülatör başlatılırken gecikmeyi ayarlamak için önceki Ağ gecikmesi biçimi listesinde belirtildiği gibi, desteklenen bir emulator -netdelay gprs emulator -netdelay 40,100 Emülatör çalışırken ağ gecikmesinde değişiklik yapmak için konsola bağlanın ve network delay gprs network delay 40 100 |
network speed speed |
Emülatör, çeşitli ağ aktarım hızlarını simüle etmenizi sağlar.
Emülatör başlatılırken bir aktarım hızı veya aralığı ayarlayabilirsiniz ya da uygulama emülatörde çalışırken hızı değiştirmek için konsolu kullanabilirsiniz.
Ağ hızı biçimi:
Emülatör başlatılırken ağ hızını ayarlamak için önceki Ağ hızı biçimi listesinde olduğu gibi, desteklenen bir emulator -netspeed gsm @Pixel_API_26 emulator -netspeed 14.4,80 @Pixel_API_26 Emülatör çalışırken ağ hızında değişiklik yapmak için konsola bağlanın ve network speed 14.4 80 |
network capture {start|stop} file |
Paketleri bir dosyaya gönderir. Aşağıdaki listede parametreler ve parametre değerleri açıklanmaktadır:
|
Telefon emülasyonu | Açıklama |
Android emülatörü, emülatördeki telefon işlevlerini simüle etmenizi sağlayan kendi GSM ve CDMA emülasyonlu modemlerini içerir. Örneğin, GSM ile gelen telefon aramalarını simüle edebilir ve veri bağlantıları kurup sonlandırabilirsiniz. CDMA ile bir abonelik kaynağı ve tercih edilen dolaşım listesini sağlarsınız. Android sistemi, simüle edilmiş aramaları tıpkı gerçek aramalar gibi işler. Emülatör, arama sesini desteklemiyor. | |
gsm {call|accept|cancel|busy} phonenumber
|
gsm parametreleri şunlardır:
|
gsm {data|voice} state
|
data state komutu, GPRS veri bağlantısının durumunu, data voice state komutu ise GPRS ses bağlantısının durumunu şu şekilde değiştirir:
|
gsm hold
|
Bir çağrının durumunu hold olarak değiştirir. Bir çağrının durumunu, yalnızca geçerli durumu active veya waiting olduğunda hold olarak değiştirebilirsiniz.
|
gsm list
|
Tüm gelen ve giden aramaları ve bunların durumlarını listeler. |
gsm status
|
Geçerli GSM ses/veri durumunu bildirir. Değerler, voice ve data komutları için açıklanan değerlerdir.
|
gsm signal {rssi|ber}
|
Güncellemenin sonraki 15 saniyesinde bildirilen sinyal gücünü (rssi) ve bit hata oranını (ber) değiştirir. Aşağıdaki listede parametreler ve değerleri açıklanmaktadır:
|
gsm signal-profile num
|
Sinyal gücü profilini ayarlar.
num , 0 ile 4 arasında bir sayıdır.
|
cdma ssource source
|
Mevcut CDMA abonelik kaynağını belirler. Burada source , CDMA operatörünün abonelerini ve değerlerini aşağıdaki gibi içeren ağ tabanlı bir izin verilenler listesidir:
|
cdma prl_version version
|
Tercih edilen geçerli dolaşım listesi (PRL) sürümünü atar. Sürüm numarası, sistem seçimi ve edinme sürecinde kullanılan bilgileri içeren PRL veritabanı içindir. |
Emülatördeki sensörleri yönet | Açıklama |
Bu komutlar, ortalama görüntüleme süresinde hangi sensörlerin bulunduğuyla ilgilidir. Ayarları, sensor komutunu kullanmanın yanı sıra İvme ölçer ve Ek sensörler sekmelerindeki Sanal sensörler ekranındaki emülatörde görüp düzenleyebilirsiniz.
|
|
sensor status |
Tüm sensörleri ve durumlarını listeler. Aşağıda, sensor status komutunun örnek çıkışı verilmiştir:
|
sensor get sensor-name
|
sensor-name ayarlarını alır. Aşağıdaki örnekte ivme sensörünün değeri elde edilir:
sensor get acceleration acceleration = 2.23517e-07:9.77631:0.812348
İki nokta üst üste(:) ile ayrılan |
sensor set sensor-name value-x:value-y:value-z
|
sensor-name değerlerini ayarlar. Aşağıdaki örnekte ivme sensörü, iki nokta üst üste ile ayrılmış x, y ve z değerlerine ayarlanmaktadır.
sensor set acceleration 2.23517e-07:9.77631:0.812348 |
SMS emülasyonu | Açıklama |
sms send sender-phone-number textmessage
|
Gelen SMS emülasyonu oluşturur. Aşağıdaki listede parametreler ve değerleri açıklanmaktadır:
Aşağıdaki örnekte, 4085555555 telefon numarasına "merhaba" mesajı gönderilmektedir: sms send 4085555555 hi there Konsol, SMS mesajını Android çerçevesine yönlendirir ve bu çerçeve, mesajı emülatörde SMS işleyen bir uygulamaya (ör. Mesajlar uygulaması) iletir. 10 numara aktarırsanız uygulama bunu telefon numarası olarak biçimlendirir. Daha uzun veya daha kısa sayısal dizeler, bunları gönderdiğiniz şekilde gösterir.
|
Parmak izi simülasyonu | Açıklama |
finger touch fingerprint-id
|
Sensöre dokunan bir parmağı simüle eder. |
finger remove
|
Parmakla kaldırma simülasyonu sağlar.
Bu komutların nasıl kullanılacağıyla ilgili talimatlar için parmak izi simülasyonu ve doğrulaması ile ilgili aşağıdaki bölüme bakın. |
Parmak izi simülasyonu ve doğrulaması
![](https://developer.android.com/static/studio/images/run/fingerprint_2x.png?authuser=7&hl=tr)
Şekil 1. Parmak izi kimlik doğrulama ekranı.
Uygulamanız için parmak izi kimlik doğrulamasını simüle etmek ve doğrulamak amacıyla finger
komutunu kullanın. SDK Araçları 24.3 veya sonraki sürümler ile Android 6.0 (API düzeyi 23) veya sonraki sürümler gerekir.
Parmak izi kimlik doğrulamasını simüle etmek ve doğrulamak için aşağıdaki adımları izleyin:
- Parmak izi kimliğiniz yoksa Ayarlar > Güvenlik > Parmak izi'ni seçip kayıt talimatlarını uygulayarak emülatöre yeni bir parmak izi kaydedin.
- Uygulamanızı parmak iziyle kimlik doğrulamayı kabul edecek şekilde ayarlayın. Bu kurulumu gerçekleştirdikten sonra, cihazınızda parmak izi kimlik doğrulama ekranı görüntülenir.
- Uygulamanızda parmak izi kimlik doğrulama ekranı gösterilirken konsola gidip
finger touch
komutunu ve oluşturduğunuz parmak izi kimliğini girin. Bu işlem, parmakla dokunmayı simüle eder. - Ardından, parmakla kaldırma simülasyonu için
finger remove
komutunu girin.Uygulamanız, bir kullanıcı parmağını parmak izi sensöründen çıkarıp dokunmuş gibi yanıt vermelidir.