2011-07-11 24 views

答えて

16

はい、あなたはです。

Configuration config = getResources().getConfiguration(); 

を使用してConfigurationオブジェクトを取得...そしてkeyboardフィールドを見てください。

keyboardの値がKEYBOARD_NOKEYSではない場合、ユーザーにはハードウェアキーボードがあります。

@Carlは、下記の彼のコメントで、あなたのアプリケーションが実行中にUSBキーボードを接続して、keyboardの値を変更することがあることに注意してください。

+0

私が探していたことをありがとう。 – Bryan

+1

config.keyboardがKEYBOARD_NOKEYSでない場合、ユーザーがハードウェアキーボードを持っていることは事実ですが、デバイスがKEYBOARD_NOKEYSを報告するかもしれないが、外部USBキーボードを接続してKEYBOARD_QWERTYを報告するが走っています。少なくとも、CyanogenMod 7.0.3-Harmony/Android 2.3.3を実行しているGTabletがあります。 また、キーボードの値がKEYBOARD_QWERTYではなくKEYBOARD_12KEYではなくKEYBOARD_NOKEYSでない場合、キーボードのタイプが重要である場合は、これらを特にテストすることができます。 – Carl

+0

@Carl - アプリケーションの途中で接続されているポイントを含むように更新されました。ありがとう。 – razlebe

関連する問題