AndroidエミュレーターでPCのキーボードを使用するにはどうすればよいですか?


137

AndroidエミュレーターでAndroidアプリを実行/テストし、PCキーボードを使用して入力したいと思います。エミュレーターを使用する場合、ネイティブAndroid(画面)キーボードからの入力のみを受け入れます。Androidエミュレーター内でPCキーボードを使用できるようにするにはどうすればよいですか?


1
キーボードは、エミュレーターインスタンスのデフォルト設定で動作します。AVD用に構成された高度な設定はありますか?どのOSを実行していますか?これに何が影響するかは完全にはわかりませんが、セットアップについてさらに詳細が必要になる場合があります。
-eldarerathis

私は通常の設定以外に特別なことは何もしませんでした。私のOSはWin7 32ビットです
Hafiz

1
@eldareathisが言ったように、デフォルトでは、キーボードはそれをさせるようなわからない...エミュレータで動作するはずない仕事
ブライアン・デニー

元々Eclipseを使用していたときにこの質問がありましたが、現在私を含むほとんどの人はAndroidスタジオを使用していますが、この問題はもうありませんので、この質問を閉じますか?
ハフィズ

回答:


119

開発者ツール(v20.0.0v2012 ...)をアップグレードした後、同じ問題が発生しました。突然、私のAndroid仮想デバイスはいずれも、私の物理的なPC / Macキーボードからの入力を受け入れません。

これは私がそれを修正した方法です:

  1. Eclipse Window menu>>AVD Manager
  2. 仮想デバイスを選択してクリックします Edit
  3. 下のHardwareをクリックして、New
  4. 選択してKeyboard SupportクリックOK
  5. 値を編​​集して yes
  6. ここで、「Abtract LCD Density」などのリスト内の別のアイテムをクリックする必要があります。これにより、UIは「はい」の変更を保持しているようです。

この「キーボードサポート」ハードウェアプロパティが追加されていない他のAVDは、物理的なキーボード入力を受け入れません。


3
私にとってはバグのようです。このトリックは機能します。
クマービベック

2
私には機能しません。ウィンドウを保存して閉じた後、キーボードサポートの値が「no」にリセットされます
ジャスティン

1
ジャスティン、私の元の投稿はクリックオフのステップに言及していましたが、いくつかのダミー(Flowまたはce4を見る)がその情報を削除しました。「はい」に変更した後、リスト内の別のアイテムをクリックすると、UIに「はい」の設定が記憶されるようです。屠殺された投稿をステップ6で更新しました。:
クリススミス

19

次の設定を試してください。私の環境(ターゲット:Android 4.0.3-APIレベル15)は成功しました。

AVD-編集-ハードウェア:-新規...-キーボードサポート-はい

AVD-編集-ハードウェア:-新規...-キーボードの蓋のサポート-いいえ


エミュレータの実行中に有効にする方法を知っていますか?
jcollum

1
どうしたのKeyboard lid support
ケヴィンオー

8

.androidディレクトリのconfig.iniファイルを変更する必要があります。このファイルは、メインハードドライブディレクトリにあります。そこからavdファイルを開くと、仮想デバイスのリストが表示されます。目的のデバイスを開き、メモ帳でconfig.iniを開きます。次に、次のテキストをコピーします: "hw.keyboard = yes"(引用符を除く)、保存して閉じます。次回エミュレータを開くときに、キーボードを使用できるようになります。

config.iniと同じディレクトリにあるhardware-qemu.iniファイルを開いて、すべてのハードウェアオプションのリストを表示することもできます。hw.keyboardを「no」から「yes」に変更します。

お役に立てれば!


6

この回答は、ソースからエミュレータを構築した人向けです(source.android.comの指示に従ってください)。次のファイルのプロパティを変更する必要があります。

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

そのファイルの次のセクションで、デフォルト値をnoから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/>

次に(makeを使用して)再構築します。少なくともこれでうまくいきました。


1
さらに簡単です。AVDマネージャでこのプロパティを設定できます。ハードウェアプロパティリストに値「yes」のキー「keyboard」を追加します。
ce4

4

構成が正しいにもかかわらずこの問題が発生し、実際の問題は、この問題で報告されているように、エミュレーターのコントロールボタンウィンドウに焦点が当てられていることに気付きました。

これが問題かどうかを確認するには、スペースを押すと実際にこれらのボタンのいずれかが押されるかどうかを確認し、タブを押すとエミュレーターコントロールの要素間でハイライトフォーカスが移動するかどうかを確認します。それが問題である場合は、次のように回避できます。

  • 拡張コントロールを選択します(エミュレーターコントロールの[...]ボタン)
  • クリックして、拡張コントロールウィンドウの任意の項目に変更します
  • 拡張コントロールウィンドウを閉じます

これで、エミュレーターコントロールではなく、Androidのメインエミュレーターウィンドウにフォーカスが戻り、キーを押すとAndroidアプリに移動します。


2
その問題を指摘してくれてありがとう!「xterm -e exit」を実行するショートカットを使用して、上記の回避策を使用して、フォーカスを取り戻しました。それは、設定メニューを開いたり閉じたりするよりも高速です。問題はxfceウィンドウマネージャーに関連しているようです
WarrenFaith

0

ここでいくつか示しているように、AVD Emulatorインスタンスに対してPCキーボードを有効にする必要があります。Android Developerのエミュレータページがキーコマンドなどについて述べていることから判断すると、SDK内でPCキーボードの使用を有効/無効にする方法はないようです。最善の策は、SDKを再インストールしてからもう一度試すことです。


私はすでにSDKの新しいバージョンをインストールしている
ハーフィズ

0

Ctrl+ F11またはNumPadを試してください7。他の場所から無効にしない限り、キーボードが有効になります。


4
Ctrl + F11は縦向き/横向きだと思いましたか?
12

はいCtrl + F11方向を切り替え、キーボードを有効にしない、テンキー7と同じ
Hafiz

はい、方向を切り替えますが、キーボードも表示します。
-slybloty

私はエミュレータでkeybarodサイドないエミュレータでは、私のPCのキーボードを有効に話しています@slybloty
ハーフィズ

@Hafizこの問題は解決しましたか?もしそうなら、どのように?
-slybloty

0

で使用Xamarin.Androidしている場合はVisual Studio 2010Keyboard Support次のように有効にできます。

  1. AVDを閉じます
  2. VS2010では、に行きます Tools > Start Android Emulator Manager
  3. AVD Name追加するものを選択しKeyboard SupportEditボタンをクリックします
  4. ではHardwareエリア、クリックNewボタンを
  5. Propertyドロップダウンを選択しKeyboard support、クリックOKボタンを
  6. Keyboard support Property追加されたHardwareリスト。ValueからNoへの変更Yes
  7. ボタンをクリックしEdit AVDます

「Android仮想デバイスの編集」ウィンドウのスクリーンショット

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.