android系统连接蓝牙键盘

Android使用蓝牙键盘的快键按键:shift+空格 切换中英文 shift+回车 切换拼音、五笔、笔划输入法。ctrl + A可以全选,ctrl + C可以复制, ctrl + v可以粘贴, ctrl + x可以剪切。shift+方向键可以选择文字。alt+空格可以输入符号。

更新1:更新使用HID蓝牙无线键盘的情况。
20120712更新2:更新Android4.0.4蓝牙无线键盘的支持情况。

更新:博文所说的使用SPP协议的蓝牙键盘已经比较少习,目前大多数能买的键盘,比如苹果G6蓝牙键盘、罗技dinovo蓝牙无线键盘,一般使用HID协议。

前几天我测试了LG SU640的蓝牙键盘使用情况:这个手机在2.3.5和4.0.4系统下都可以直接和使用HID协议的蓝牙键盘。在有的ROM下,可以直接使用百度输入法输入中文,拼音和五笔都可以,在使用蓝牙键盘输入时也不会出现虚拟键盘,候选词也可以使用数字键快速选取,可以使用组合快捷按键选择中文和英文、五笔或拼音输入,跟台式电脑没有两样。后来的韩版4.0.4 ROM上,不知道什么原因,虽然蓝牙键盘也可以顺序连接上,但在使用很多输入法,如百度输入法,QQ输入法时只能输入英文,而且虚拟键盘一直显示,阻挡着近一半的显示屏。 在我的测试中,只有触宝输入法可以支持蓝牙键盘,几乎完美,五笔拼音也都没有问题,也可以使用数字键快速选取候选词。

4.0.4系统对外接键盘支持不错。 组合键ctrl + A可以全选,ctrl + C可以复制, ctrl + v可以粘贴, ctrl + x可以剪切,这些基本都跟windows一样。shift+方向键可以选择文字。

超级终端pro也支持外接键盘。 ctrl + c可以中止程序, tab键可以自动补完文件名, 上下键可以调用历史命令。

相比,android系统对蓝牙鼠标的支持则严重落后。 鼠标的右键基本不会产生任何作用。 在chrome下也没有右键菜单功能。 按下左键也不能选择文字。

原文:

买了一个惠普折叠便携式蓝牙键盘(HP Bluetooth Foldable Keyboard FA287A)  ,想用它和使用android系统a650s手机连接起来打字。 成功了一半。

使用spp协议和使用hid协议的不同蓝牙键盘

原来蓝牙键盘是有分不同的蓝牙通信协议的。有的是SPP协议(Serial Port Profile), 有的HID协议(Human Interface Device Profile)。

使用SPP协议的蓝牙键盘连接android系统手机

我买的惠普FA287A蓝牙键盘用的是SPP协议。(我发现微星MSI BK100 Universal Bluetooth Keyboard跟它非常相似。甚至windows mobile下驱动可以通用。)

android系统(2.2)目前好像不能原生地支持spp协议键盘。必须得安装第三方驱动。 我试过BlueInput,Keypro,BluePiano Bluetooth Keyboard, GetBlue Bluetooth Ready这几个驱动。 其中BlueInput好像只支持使用HID协议的蓝牙键盘,而最后面两个虽然能连接成功,但不能输出正确的字符。 只有用KeyPro可以正常地输出。

使用KeyPro也不是很完美。 首先, KeyPro是收费软件, 使用免费版会在若干字符间插入一段版权提示文字。其次, Keypro安装后会生成一个独立的输入法,要使用这个输入法才能使用蓝牙键盘输入, 所以没办法兼容百度等中文输入法, 也就是没办法用蓝牙键盘输入中文! 而且,即使是英文输入, 好像有些按键,比如ctrl按键, 也是没办法识别。

查了半天资料, 也没找到更好的解决办法(因为使用的是google,一次又一次地被连接重置,我沉默)。 倒是听说有人用BlueInput或使用其它HID驱动在android手机上连接HID蓝牙键盘后, 可以使用谷歌等中文输入法输入中文的(优酷上有G2的视频)。 这样看来现在买HID协议的蓝牙键盘(比如苹果G6蓝牙键盘)或许更明智一些。

使用HID协议的蓝牙键盘连接android系统手机

有了上次的教训,今天买了一个Freedom Universal Keyboard. 这是一个使用spp和hid双协议的无线蓝牙键盘。 键盘上有一个硬件开关, 可以在spp协议和hid协议间切换。 今天我用一下午试验了android手机和HID协议蓝牙键盘的连接情况。

听说android 2.2已经原生支持HID协议无线蓝牙设备了,我在a650s上试, 发现还是不行。 系统可以搜索到键盘,能配对(配对时在手机上输入1234,按OK,然后在键盘上敲入1234并回车),但显示没有联接上。

据说使用CyanogenMod固件的android手机原生支持HID蓝牙键盘。

方法A: 手动安装HID工具。这个方法只适合部分手机。

使用这个方法要android root权限
下载下面三个文件:
http://androidobex.googlecode.com/files/hciconfig
http://androidobex.googlecode.com/files/hcitool
http://androidobex.googlecode.com/files/hidd
将它们放到手机/system/xbin或/system/bin目录内。然后打开手机蓝牙, 搜索到键盘,并配对上。 (显示配对但未联接状态)
然后开启手机USB调试模式,用数据线连接电脑(电脑上要先安装好手机驱动), 使用adb工具在电脑命令行终端上连接手机:
//后为说明文字, 不要输入
#adb shell //开始连接手机
#su //切成超级用户
#hidd –server –search //搜索蓝牙设备并联接上。执行前最好关闭身边其它的蓝牙设备。
Searching …
Connecting to device 00:0B:0D:8F:FB:26
#hidd –show //显示联接状态:
00:0B:0D:8F:FB:26 Bluetooth HID Boot Protocol Device [0000:0000] connected [boot-protocol]
这样连接成功了。 手机打开一个输入文本的地方,如果成功, 就可以使用蓝牙键盘输入了。 据说这个方法成功后,可以使用中文输入法。 可惜, 在我的手机上, 所有操作都没有问题,就是用键盘不能输入任何东西。原因还有待查找。

bluetooth keyboard easy connect(官方市场上有下载)好像可以自动完成上面的操作。 但在我的手机上还是没有作用。

方法B:使用第三方软件

这回我测试了支持HID蓝牙键盘的BlueInput Demo和BlueKeyboard JP。
使用BlueInput可以输入,但要同时按两个按键(比如先按A不放再按B,才能输入B字母),很怪。 而且免费版只能用16天, 并且跟Keypro一样, 会在输入的字符间插入版权文字。

BlueKeyboard JP 应该是日本人开发的。 带有英语和日文输入法。 安装这个可以在android系统上输入文字(我只试了英文,没有试日文)。跟Keypro一样,ctrl、esc等几个键不能用(这应该是android系统的原因)。 这个免费版不会在文字间输入版权信息, 而且不限时间使用。 但会在下方显示google广告(付费版不到2美元,没有广告)。
BlueKeyboard JP安装之后没有程序界面。 只能在语言和输入法设置那里设置它。 因为它也是一个独立的文字输入法, 所以没有办法兼容百度等中文输入法, 也就是说没有办法输入中文(除非日语达人使用它的日语输入法功能录入汉字。。。)
其实能输入英文字符,作用也是明显的, 特别是对于经常使用ConnectBot这种工具的人。 但可惜的是,即便是BlueKeyboard JP, 也不太稳定, 在断开键盘连接后, 有时候我要重新启动手机,重启蓝牙键盘才能重新联接上。

Android设备连接蓝牙键盘的总结

看来我对android系统的期待太高太超前了。 相比Palm,BlackBerry和Windows Mobile及ubuntu linux等系统,大多android设备的扩展能力还是非常有限的。 目前, 只有少量android手机和平板可以在不安装第三方软件的情况下使用外蓝牙键盘。 而对于更多的android设备, 即便是在安了第三方软件的情况下, 最多也只能实现英文字符的输入。 并且会有ctrl、esc等少量字符不支持的问题。

现在, 越来越多的平板电脑选择使用android系统。 相对于手机, 平板电脑对键盘的需求又上了一个层次。 我想明年的今天, Android设备连接蓝牙无线键盘或USB有线键盘一定会方便的多。

附:关于给移动设备买键盘的我的想法

键盘应该够尺寸,手感要好。 如果输入不方便,也没有外接键盘存在的理由了。
键盘应该轻便, 键盘太重的话,加上平板或手机,不如带笔记本了。
最好是五排按键以上,带独立的数字按键。 配合中文输入法的话, 有数字键可以快捷地选取候选词。
带支架更好, 可以把手机等设备坐在支架上,不用再找支架。
不一定要无线,我感觉使用USB接口的键盘连接更方便一些,而且不用再给键盘找电池。 希望android设备早日添加usb-host功能,并带上键盘驱动。
可以折叠的话更方便携带

转载请注明: 转自船长日志, 本文链接地址: http://www.cslog.cn/Content/android-bluetooth-keyboard/

此条目发表在 信息处理 分类目录,贴了 , , , 标签。将固定链接加入收藏夹。

android系统连接蓝牙键盘》有 12 条评论

  1. Pingback 引用通告: 智器V5 II使用感受和使用心得 | 船长日志

  2. Ye 说:

    我是用honeycomb的刚开始用 freedom pro spp那档和网站提供的驱动可以但没有中文
    换到HID也是出现了那些数字,怎么按都没反应我把CTRL按下按那些数字把FN按下按反正都按了一遍还没有反应,都按了取消放弃了,退出到蓝牙设置那里,居然连上了!!! 真爽啊,换到什么输入法就输入什么文,你也继续试试看

  3. Ye 说:

    经过实验我终于明白了,蓝牙连接那一瞬间,你随便按就会连上了,别管那些数字,是HID那档的,之后用中文输入法就能输入了

  4. Pingback 引用通告: 我使用的android应用程序们 | 船长日志

  5. zjwgt 说:

    HP Keyboard (FA287A)键盘怎么处理的,我也有一个

  6. Pingback 引用通告: MyHeartFly » Blog Archive » android v880 使用蓝牙键盘

  7. 刀刃风暴 说:

    感谢船长的探索,我今天入手了Nokia的su-8w键盘,也遇到和船长相似的问题——已配对但未连接。不过幸好的是我用船长推荐的bluetooth keyboard easyconnect解决了问题,而且esc,fn都可以正常使用。不过Nokia手机那几个对应的按键肯定是没有用了。我用的是XT800W,刷的是MIUI 2.3的系统。坦白讲,现在手机蓝牙键盘性价比最高的就是这款了,那个130块的山寨货就不提了,那个稍微好点的山寨货也要180,用的是X按键,手感过得去,做工也就这样。但是现在su-8w只要250元,那个做工拿到手就知道了,绝对是Nokia品质!

  8. Pingback 引用通告: LG Optimus LTE SU640评测:我的使用感受并附经验技巧 | 船长日志

  9. Pingback 引用通告: BlueTooth « Tech Blog

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>