338 Stimmen

Android-Emulator akzeptiert keine Tastatureingaben - SDK tools rev 20

Ich habe die SDK-Tools auf Version 20 (von 18) aktualisiert, und seit der Aktualisierung scheint der Emulator keine Eingaben von der Laptop-Tastatur zu akzeptieren. Sondern nur mit dem Emulator eigene "weiche" Tastatur (die erscheint, wenn ein Eingabefeld fokussiert ist).

Ich habe versucht, die SDK-Tools (und das gesamte SDK) neu zu installieren, Eclipse Android-Plugins zu deinstallieren und neu zu installieren, Emulator-Geräte neu zu erstellen. Aber nichts davon scheint zu helfen, und das macht mich wahnsinnig. Es ist hoffnungslos, mit dem Trackpad eines Laptops einzugeben.

Ist jemand auf dieses Problem gestoßen?

483voto

James Wald Punkte 13436

Update

Ab SDK Rev. 21 hat der Android Virtual Device Manager eine verbesserte Benutzeroberfläche, die dieses Problem behebt. Ich habe einige der wichtigsten Konfigurationseinstellungen unten hervorgehoben:

enter image description here

Wenn Sie feststellen, dass die weichen (bildschirmgestützten) Haupttasten Back , Home usw. in Ihrem Emulator fehlen, können Sie die hw.mainKeys=no um sie zu ermöglichen.

enter image description here

Ursprüngliche Antwort

Obwohl die Entwicklerdokumentation besagt, dass die Tastaturunterstützung standardmäßig aktiviert ist, scheint dies im SDK Rev. 20 nicht der Fall zu sein. Ich habe die Tastaturunterstützung in der config.ini-Datei meines Emulators explizit aktiviert und das hat funktioniert!

Hinzufügen: hw.keyboard=yes

An: ~/.android/avd/<emulator-device-name>.avd/config.ini

In ähnlicher Weise ist hinzuzufügen hw.dPad=yes wenn Sie die Pfeiltasten zum Navigieren in der Anwendungsliste verwenden möchten.

Referenz: http://developer.Android.com/tools/devices/managing-avds-cmdline.html#hardwareopts

Unter Mac OS und Linux können Sie alle Ihre Emulator-Konfigurationen mit einem Terminal-Befehl bearbeiten:

for f in ~/.android/avd/*.avd/config.ini; do echo 'hw.keyboard=yes' >> "$f"; done


Wenn Ihr Tablet-Emulator keine BACK/HOME-Tasten hat, wählen Sie bitte WXGA800 als integrierter Skin im AVD-Editor: enter image description here

Oder durch manuelles Einstellen des Skins in der config.ini:

skin.name=WXGA800
skin.path=platforms/android-16/skins/WXGA800

(Beispiel ist für API 16)

113voto

Romin Punkte 8653

Bestätigt. Ich hatte das gleiche Problem, nachdem ich auf die Tools-Version 20 aktualisiert hatte. Ich musste die AVD bearbeiten, um eine Option wie folgt hinzuzufügen:

  1. Gehen Sie in Eclipse zum AVD-Manager.
  2. Wählen Sie die betreffende AVD aus und klicken Sie auf Bearbeiten
  3. Gehen Sie zum Abschnitt Hardware und klicken Sie auf Neu.
  4. Wählen Sie die Eigenschaft Name: Tastaturunterstützung
  5. Standardmäßig wird sie mit dem Wert "nein" hinzugefügt. Klicken Sie einfach auf die Spalte "Wert" und ändern Sie den Wert in "Ja".
  6. Klicken Sie erneut auf AVD bearbeiten.

Dadurch wird die Eigenschaft hw.keyboard=yes in der Datei config.ini für das AVD hinzugefügt.

Sie müssen auch hw.mainKeys = yes setzen

61voto

Hong Punkte 16499

Öffnen Sie in Android Studio den AVD-Manager (Extras > Android > AVD-Manager). Tippen Sie auf die Schaltfläche Bearbeiten des Emulators: enter image description here

Wählen Sie "Erweiterte Einstellungen anzeigen". enter image description here

Aktivieren Sie "Tastatureingabe aktivieren". enter image description here

Klicken Sie auf Fertig stellen und starten Sie den Emulator, um die Tastatureingabe zu genießen.

15voto

Joel Pelaez Punkte 311

Schauen Sie im AVD-Manager nach, wählen Sie die AVD aus und klicken Sie auf "Bearbeiten". Im Abschnitt "Hardware": Klicken Sie auf "Neu" und suchen Sie nach "Tastaturunterstützung" und fügen Sie sie mit der Schaltfläche "OK" hinzu, setzen Sie den Wert auf "Ja" und speichern Sie die Änderungen mit "AVD bearbeiten".

10voto

Vincy Punkte 1018

Google wollte den Entwicklern mehr Kopfschmerzen bereiten.

Bearbeiten Sie also Ihre AVD und fügen Sie "Keyboard Support" im Abschnitt Hardware hinzu und ändern Sie den Wert auf "Yes".

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X