Jak korzystać z klawiatury komputera na emulatorze Androida?


137

Chcę uruchamiać / testować aplikacje na Androida na emulatorze Androida i chcę pisać za pomocą klawiatury komputera, ponieważ pozwala mi to pisać szybciej i testować. Kiedy korzystam z emulatora, akceptuje on tylko dane wejściowe z natywnej klawiatury Androida (ekranowej). Jak mogę włączyć klawiaturę komputera do użytku w emulatorze Androida?


1
Moja klawiatura działa z ustawieniami domyślnymi w instancji emulatora. Czy masz skonfigurowane jakieś zaawansowane ustawienia AVD? Z jakiego systemu operacyjnego korzystasz? Nie jestem do końca pewien, co by na to wpłynęło, ale możemy potrzebować więcej szczegółów na temat konfiguracji.
eldarerathis

Nie zrobiłem nic specjalnego poza normalnymi ustawieniami, a mój system operacyjny to Win7 32bit
Hafiz

1
Jak powiedział @eldareathis, domyślnie klawiatura powinna działać w emulatorze ... Nie jestem pewien, co mogłoby spowodować, że nie zadziała
Bryan Denny

pierwotnie to pytanie zadane w czasie, gdy korzystałem z Eclipse, a teraz większość osób, w tym ja, używa Androida Studio i nie mam już tego problemu, więc powinienem po prostu zamknąć to pytanie?
Hafiz

Odpowiedzi:


119

Miałem ten sam problem po aktualizacji narzędzi programistycznych (v20.0.0v2012 ...). Nagle żadne z moich wirtualnych urządzeń z Androidem nie zaakceptowało żadnych danych wejściowych z mojej fizycznej klawiatury PC / Mac.

Tak to naprawiłem:

  1. Zaćmienie Window menu>>AVD Manager
  2. Wybierz swoje urządzenie wirtualne i kliknij Edit
  3. W obszarze HardwareKliknijNew
  4. Wybierz, Keyboard Supporta następnie kliknijOK
  5. Edytuj jego wartość na yes
  6. Teraz musisz kliknąć inny element na liście, na przykład „Zmniejsz gęstość LCD” lub coś takiego. Wygląda na to, że interfejs użytkownika zachowuje zmianę „tak”.

Moje inne AVD, które nie mają dodanej właściwości sprzętowej „obsługa klawiatury” NIE akceptują mojego fizycznego wprowadzania danych z klawiatury.


3
Wydaje mi się, że to błąd. Ta sztuczka działa.
Kumar Bibek

2
Nie działa dla mnie, wartość Keyboard Support resetuje się z powrotem do „nie” po zapisaniu i zamknięciu okna ...
Justin

1
Justin, mój oryginalny post wspominał o etapie kliknięcia, ale jakiś manekin (patrząc na ciebie Flow lub ce4) usunął tę informację. Po zmianie na „tak” kliknij na inny element na liście i wydaje się, że interfejs użytkownika zapamiętuje ustawienie „tak”. Zaktualizowałem mój post z rzeźbą o krok 6. :-)
Chris Smith,

19

Spróbuj następujących ustawień. Moje środowisko (cel: Android 4.0.3 - API Level 15) powiodło się.

AVD - Edycja - Sprzęt: - Nowy ... - Obsługa klawiatury - tak

AVD - Edycja - Sprzęt: - Nowy ... - Obsługa pokrywy klawiatury - nie


Czy znasz sposób na włączenie podczas działania emulatora?
jcollum

1
O co chodzi z tym Keyboard lid support?
KevinOrr

8

Musisz zmienić plik config.ini w katalogu .android. Ten plik znajduje się w głównym katalogu dysku twardego. Stamtąd otwórz plik avd, a zobaczysz listę urządzeń wirtualnych. Otwórz wybrane urządzenie, a następnie otwórz config.ini w notatniku. Następnie skopiuj ten tekst: „hw.keyboard = yes” (bez cudzysłowów), a następnie zapisz i zamknij. Następnym razem, gdy otworzysz emulator, powinieneś móc korzystać z klawiatury.

Możesz również otworzyć plik hardware-qemu.ini w tym samym katalogu, co config.ini, a następnie zobaczysz listę wszystkich opcji sprzętowych. Zmień hw.keyboard z „nie” na „tak”.

Mam nadzieję że to pomoże!


6

Ta odpowiedź jest dla tych, którzy zbudowali emulator ze źródła (tj. Postępując zgodnie z instrukcjami ze strony source.android.com). Musisz zmodyfikować właściwość w następującym pliku:

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

W następnej sekcji tego pliku zmień wartość domyślną z nie na tak:

# 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/>

Następnie przebuduj (używając make). Przynajmniej to działało dla mnie.


1
To jeszcze łatwiejsze. Możesz ustawić tę właściwość w menedżerze AVD: Dodaj klawisz „klawiatura” z wartością „tak” na liście właściwości sprzętu.
ce4

4

Miałem ten problem pomimo prawidłowej konfiguracji i zdałem sobie sprawę, że faktyczny problem polegał na tym, że skupiono się na oknach przycisków kontrolnych emulatora, zgodnie z tym , co opisano w tym numerze .

Aby sprawdzić, czy to jest twój problem, sprawdź, czy naciśnięcie spacji faktycznie naciska jeden z tych przycisków, a jeśli naciśnięcie klawisza przesuwa kwadrat podświetlenia między elementami w kontrolkach emulatora. Jeśli to jest problem, powinieneś być w stanie obejść go w następujący sposób:

  • Wybierz rozszerzone elementy sterujące (przycisk „...” w elementach sterujących emulatora)
  • Przejdź do dowolnego elementu w rozszerzonym oknie sterowania, klikając
  • Zamknij okno rozszerzonych elementów sterujących

Fokus powinien teraz powrócić do głównego okna emulatora Androida, a nie kontrolek emulatora, a naciśnięcia klawiszy powinny przejść do aplikacji na Androida.


2
Dziękujemy za wskazanie tego problemu! Użyłem wspomnianego obejścia ze skrótem wykonującym „xterm -e exit”, aby przywrócić fokus. Jest to szybsze niż otwieranie i zamykanie menu ustawień. Problem wydaje się być związany z menedżerem okien xfce
WarrenFaith,

0

Jak wskazało kilka osób, klawiatura PC powinna być włączona dla instancji emulatora AVD. Sądząc po tym, co strona emulatora w Android Developer mówi o poleceniach klawiszy i nie wydaje się, że istnieje sposób na włączenie / wyłączenie użycia klawiatury komputera w zestawie SDK. Najlepszym rozwiązaniem jest ponowna instalacja pakietu SDK i spróbuj ponownie.


Zainstalowałem już nowszą wersję sdk
Hafiz

0

Spróbuj Ctrl+ F11lub NumPad 7. To powinno włączyć klawiaturę, chyba że zostanie wyłączone z innego miejsca.


4
myślałem, że Ctrl + F11 to orientacja pionowa / pozioma?
jlehenbauer

Tak Ctrl + F11 przełączaj się między orientacjami i nie włączaj klawiatury, to samo z Numpad 7
Hafiz

Tak, przełącza się między orientacją, ale także wyświetla klawiaturę.
slybloty

@slybloty Mówię o włączeniu klawiatury mojego komputera w emulatorze po stronie keybarod w emulatorze
Hafiz

@Hafiz Czy rozwiązałeś ten problem? Jeśli tak to jak?
slybloty

0

Jeśli używasz Xamarin.Androidw Visual Studio 2010, możesz włączyć Keyboard Supportw następujący sposób:

  1. Zamknij AVD
  2. W VS2010 przejdź do Tools > Start Android Emulator Manager
  3. Wybierz AVD Name, dla którego chcesz dodać Keyboard Support, a następnie kliknij Editprzycisk
  4. W Hardwareobszarze kliknij Newprzycisk
  5. Z Propertymenu wybierz Keyboard support, a następnie kliknij OKprzycisk
  6. Keyboard support PropertyZostanie dodany do Hardwarelisty. Zmień Valuez NonaYes
  7. Kliknij Edit AVDprzycisk

Zrzut ekranu okna „Edycja urządzenia wirtualnego z Androidem”

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.