6
現在のユーザーの電話機にハードウェアキーボードが搭載されているか、オンスクリーンキーボードしか搭載されていないかを検出したいと考えています。これはSDKで可能ですか?Androidデバイスに実際のキーボードがあるかどうかを判断する方法はありますか?
現在のユーザーの電話機にハードウェアキーボードが搭載されているか、オンスクリーンキーボードしか搭載されていないかを検出したいと考えています。これはSDKで可能ですか?Androidデバイスに実際のキーボードがあるかどうかを判断する方法はありますか?
はい、あなたはです。
は
Configuration config = getResources().getConfiguration();
を使用してConfigurationオブジェクトを取得...そしてkeyboard
フィールドを見てください。
keyboard
の値がKEYBOARD_NOKEYSではない場合、ユーザーにはハードウェアキーボードがあります。
@Carlは、下記の彼のコメントで、あなたのアプリケーションが実行中にUSBキーボードを接続して、keyboard
の値を変更することがあることに注意してください。
私が探していたことをありがとう。 – Bryan
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
@Carl - アプリケーションの途中で接続されているポイントを含むように更新されました。ありがとう。 – razlebe