Come posso usare la tastiera del mio PC sull'emulatore Android?


137

Voglio eseguire / testare le app Android sull'emulatore Android e voglio digitare usando la tastiera del mio PC, in quanto mi permette di digitare e testare più velocemente. Quando uso l'emulatore, però, accetta solo input dalla tastiera nativa Android (sullo schermo). Come posso abilitare la tastiera del mio PC per l'uso all'interno dell'emulatore Android?


1
La mia tastiera funziona con le impostazioni predefinite su un'istanza dell'emulatore. Hai delle impostazioni avanzate configurate per il tuo AVD? Quale sistema operativo stai eseguendo? Non sono del tutto sicuro di ciò che avrebbe un effetto su questo, ma potremmo aver bisogno di maggiori dettagli sulla tua configurazione.
eldarerathis,

Non ho fatto nulla di speciale oltre alle impostazioni normali e il mio sistema operativo è Win7 32 bit
Hafiz

1
Come @eldareathis detto, per impostazione predefinita, la tastiera dovrebbe funzionare nell'emulatore ... Non sei sicuro di quello che sarebbe causare a non funzionare
Bryan Denny

originariamente questa domanda è stata posta al momento in cui stavo usando Eclipse e ora la maggior parte delle persone, incluso me, usano Android Studio e non ho più questo problema, quindi dovrei semplicemente chiudere questa domanda?
Hafiz,

Risposte:


119

Ho avuto lo stesso problema dopo aver aggiornato gli strumenti per sviluppatori (v20.0.0v2012 ...). All'improvviso nessuno dei miei dispositivi virtuali Android avrebbe accettato alcun input dalla mia tastiera fisica PC / Mac.

Ecco come l'ho risolto:

  1. Eclipse Window menu>>AVD Manager
  2. Seleziona il tuo dispositivo virtuale e fai clic Edit
  3. Sotto Hardware, fare clic suNew
  4. Seleziona Keyboard Supportquindi fai clicOK
  5. Modifica il suo valore in yes
  6. Ora devi fare clic su un altro elemento dell'elenco, come "Abtract LCD Density" o qualcosa del genere. Questo sembra far sì che l'IU mantenga il cambiamento "sì".

I miei altri AVD che non hanno aggiunto questa proprietà hardware "supporto tastiera" NON accettano il mio input fisico da tastiera.


3
Sembra un bug per me. Questo trucco funziona.
Kumar Bibek,

2
Per me non funziona, il valore di Supporto tastiera si reimposta su "no" dopo aver salvato e chiuso la finestra ...
Justin

1
Justin, il mio post originale menzionava una fase di click-off ma alcuni manichini (guardandoti Flow o ce4) hanno rimosso quelle informazioni. Dopo aver cambiato "sì", fai clic su un altro elemento nell'elenco e questo sembra far sì che l'interfaccia utente ricordi l'impostazione "sì". Ho aggiornato il mio post macellato con un passaggio 6. :-)
Chris Smith il

19

Si prega di provare le seguenti impostazioni. Il mio ambiente (Target: Android 4.0.3 - API Level 15) ha esito positivo.

AVD - Modifica - Hardware: - Nuovo ... - Supporto tastiera - sì

AVD - Modifica - Hardware: - Nuovo ... - Supporto coperchio tastiera - no


Conosci un modo per abilitare mentre l'emulatore è in esecuzione?
jcollum,

1
Che succede con il Keyboard lid support?
KevinOrr,

8

Devi cambiare il file config.ini nella tua directory .android. Questo file si trova nella directory principale del disco rigido. Da lì, apri il file avd e vedrai un elenco di dispositivi virtuali. Aprire il dispositivo desiderato e quindi aprire config.ini nel blocco note. Quindi copia questo testo: "hw.keyboard = yes" (meno le virgolette) e quindi salva e chiudi. Alla successiva apertura dell'emulatore, dovresti essere in grado di utilizzare la tastiera.

Puoi anche aprire il file hardware-qemu.ini nella stessa directory di config.ini e quindi puoi vedere un elenco di tutte le opzioni hardware. Cambia la tastiera hw.key da "no" a "sì".

Spero che sia di aiuto!


6

Questa risposta è per coloro che hanno creato l'emulatore dalla fonte (ovvero seguendo le istruzioni da source.android.com). Devi modificare una proprietà nel seguente file:

external/qemu/android/avd/hardware-properties.ini

Nella seguente sezione di quel file cambia il valore predefinito da no a yes:

# Keyboard support (qwerty/azerty)
name        = hw.keyboard<br/>
type        = boolean<br/>
default     = yes<br/>
abstract    = Keyboard support<br/>
description = Whether the device has a QWERTY keyboard.<br/>

Quindi ricostruire (usando make). Almeno questo ha funzionato per me.


1
È ancora più facile È possibile impostare questa proprietà nel gestore AVD: aggiungere un tasto 'tastiera' con valore 'sì' nell'elenco delle proprietà hardware.
Ce4,

4

Ho avuto questo problema nonostante avessi la configurazione corretta e ho capito che il vero problema era che l'attenzione era rivolta alle finestre dei pulsanti di controllo dell'emulatore, come riportato in questo numero .

Per verificare se questo è il tuo problema, controlla se la pressione dello spazio preme effettivamente uno di quei pulsanti e se premendo la linguetta si sposta il riquadro di evidenziazione tra gli elementi nei controlli dell'emulatore. Se questo è il problema, dovresti essere in grado di aggirare il problema nel modo seguente:

  • Seleziona i controlli estesi (il pulsante "..." nei controlli dell'emulatore)
  • Passare a qualsiasi elemento nella finestra dei controlli estesi facendo clic
  • Chiudi la finestra dei controlli estesi

L'attenzione dovrebbe ora tornare alla finestra principale dell'emulatore Android, non ai controlli dell'emulatore, e la pressione dei tasti dovrebbe andare alle app Android.


2
Grazie per aver segnalato questo problema! Ho usato la soluzione menzionata lì con un collegamento eseguendo "xterm -e exit" per riportare l'attenzione. È più veloce quindi aprire e chiudere il menu delle impostazioni. Il problema sembra essere correlato al gestore di finestre xfce
WarrenFaith,

0

Come alcuni hanno indicato qui, la tastiera del PC dovrebbe essere abilitata per le istanze dell'emulatore AVD. A giudicare da ciò che dice la pagina dell'emulatore su Developer Android sui comandi chiave e simili, non sembra che ci sia un modo per abilitare / disabilitare l'uso della tastiera del PC all'interno dell'SDK. Quindi la soluzione migliore è reinstallare l'SDK e riprovare.


Ho già installato la versione più recente di sdk
Hafiz,

0

Prova Ctrl+ F11o NumPad 7. Ciò dovrebbe abilitare la tua tastiera, a meno che non sia disabilitata da qualche altra parte.


4
pensavo che Ctrl + F11 fosse orientamento verticale / orizzontale?
jlehenbauer,

Sì Ctrl + F11 commuta tra gli orientamenti e non abilita la tastiera, lo stesso con il tastierino numerico 7
Hafiz,

Sì, cambia tra l'orientamento, ma fa anche apparire la tastiera.
slybloty,

@slybloty Sto parlando di abilitare la tastiera del mio PC nell'emulatore, non il keybarod laterale nell'emulatore
Hafiz,

@Hafiz Hai risolto questo problema? Se é cosi, come?
slybloty,

0

Se si utilizza Xamarin.Androidin Visual Studio 2010, è possibile abilitare Keyboard Supportcome segue:

  1. Chiudi il tuo AVD
  2. In VS2010, vai a Tools > Start Android Emulator Manager
  3. Seleziona AVD Nameciò che desideri aggiungere Keyboard Support, quindi fai clic sul Editpulsante
  4. Nella Hardwarezona, fare clic sul Newpulsante di
  5. Nel Propertymenu a discesa, selezionare Keyboard support, quindi fare clic sul OKpulsante
  6. La Keyboard support Propertysi aggiunge alla Hardwarelista. Cambia Valueda NoaYes
  7. Fai clic sul Edit AVDpulsante

Schermata della finestra "Modifica dispositivo virtuale Android"

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.