
またケータイ関係の備忘録です。。。ちょっと(?)マニアックで‥しかもわりとくだらないネタ‥しかも備忘録なので長くてスミマセン(^-^;
先日、Mac用とELECOMのBlutooth接続キーボードを手に入れたんですが、キーの配列がせっかく日本語なのに、androidが英語配列のキーボードと認識して、うまく使えなかったんです。そこでいろいろ調べているうちに‥(^-^)/
★ELECOM TK-FBM023をAndroidで日本語配列キーボードとして使う
Androidでは、USBやBlutoothのキーボードを接続すると、英語配列のキーボードとして認識するので、「@」など刻印どおりに入力できないキーがある。
これを解消するため、キーボードの定義ファイルを設定する方法がある(要root化)
うまくいけば、他のキーボード(Mac用)などでも応用可能♪
■キーボードの定義ファイル
/system/usr/keylayout/qwerty.kl
/system/usr/keychars/qwerty.kcm
ベースに書換える。
どちらもテキストファイル。
キーボード個別のファイルを作成可能。
Vendor_xxxx_Product_yyyy.kl
Vendor_xxxx_Product_yyyy.kcm
xxxx:Vender code
yyyy:Product code
Vender,Product codeの調べ方
キーボードを接続した状態で、ターミナルで以下を実行
# cat /proc/bus/input/devices
I: Bus=0005 Vendor=056e Product=1010 Version=0012
N: Name="TK-FBM023 Series"
‥以下略(^-^;
よって、定義ファイル名は以下のとおり。
Vendor_056e_Product_1010.kl
Vendor_056e_Product_1010.kcm
■klファイルの書式
key xxx KEYCODE FLAG
key xxx:SCANCODEを記入
KEYCODE:AndroidOSが定義しているKEYCODE ※1
FLAG :WAKE/WAKE_DROPPED(サスペンドからの復帰後Appにキーイベントの送信有/無)
※FLAGは省略可能?(文字キーには記述なし)
キーコードの参考URL
http://developer.android.com/reference/android/view/KeyEvent.html
■kcmファイルの書式
key KEYCODE {
label: 'X'
base: 'x'
shift,capslook: 'X'
ctrl,alt,meta: none
}
同じものは","で同行に記述可能
■できあがった2つのファイルをそれぞれの場所に格納
/systemがRead-onlyでmountされているので、そのままではコピーできない
# suして
# mount -o rw,remount /system
あとは、ファイルをコピーするだけ♪
‥結果、見事JISキーボードとして認識するようになりました♪
次はMac用のキーボードを!!‥設定する気力なんてありません‥めんどーだ(笑)
ブログ一覧 |
パソコン・タブレットなど | 日記
Posted at
2013/06/22 01:51:59