手把手教你在Android手机上实现蓝牙键盘的支持
我们知道,Windows Phone、Symbian目前都对蓝牙键盘有着良好的支持,Apple也出了自己的蓝牙键盘,同样可以完成iPhone的绝大多数操作。但是 Android……悲剧!!!Android的官方ROM(AOSP源码)以及那些比如HTC Sense、Moto Blur等等神马的面对蓝牙键盘瞬间浮云……
而据分析发现,Android系统其实保留了蓝牙键盘的通道,也就是HID设备的蓝牙频道,而到现在只有CyanogenMod的ROM利用了这个通道并集成了HID蓝牙设备的支持。如下图:
虽然现在很多型号的Android都可以有CyanogenMod可以用了,但除了杰出的性能,其界面与操作仍逊色于MIUI、Sense等ROM
好吧,下面我们就动手将蓝牙驱动模块整合到Android系统中,把手中的Android变成一台Mini Pad。
准备工作:
1、Android手机一台,型号不限,系统已取得ROOT根权限(这个是大前提!)
2、蓝牙键盘一个,型号不限,淘宝有卖,避免广告嫌疑。
3、Android手机已安装Root Explorer(也称R.E.浏览器)
下载链接:
http://down.apk.gfan.com/asdf/Pfiles/2011/7/160027_54baf26e-7a0e-4153-8a7e-071dd5019591.apk
4、安装Terminal超级终端(有这个的话即便身边没有电脑,也可以随时随地操作)
目前主要有两个版本,我用的是电子市场下载的57KB版
5、下载如下两个驱动模块文件:
http://androidobex.googlecode.com/files/hcitool
http://androidobex.googlecode.com/files/hidd
这两个是修改系统所需要的全部工具文件~
准备活动到此结束,下面开始修改系统
【刷机有风险,操作需谨慎!谨慎…慎……】
1、把刚才第五步下载的两个驱动文件传入手机,然后通过Root Explorer复制到/system/bin下
(需要Root权限,而且将根目录设置成可读写)
2、打开手机的蓝牙开关,打开蓝牙键盘,开启配对模式(不同蓝牙键盘操作方式不同,不过大致相似,长按功能键)。此时手机会搜索到你的蓝牙键盘……此时不要配对
3、打开超级终端,输入我下面【】内的内容~这个要细心,不要打错,注意“【】”不要输入,只输入里面的内容!
【su】
输入后按回车键,输入行的前面符号由#变为$,表示成功
(这个是为超级终端获取Root权限,完成后键盘输入框如果消失,长按Menu键弹出)
【hcitool scan 】
回车后会显示出:
Scanning …
B9:85:09:06:05:7E Bletooth Keyboard
(搜索蓝牙设备,为的是得到蓝牙键盘的MAC地址)
此时用笔几下那个XX:XX:XX:XX:XX:XX,这个是你的蓝牙键盘的专属识别号
【hidd --server】
(启动手机的HID蓝牙服务,开启那个没被利用的蓝牙通道。这个为了确保开通,这个命令请执行两遍,第二遍会显示错误命令:already in use,表示开启成功)
【hidd --connect B9:85:09:06:05:7E 】
(这步是手动将刚才集成的HID模块与蓝牙键盘连接,成功后输入框会再次消失)
conect命令后面的地址就是你的蓝牙键盘的MAC地址
【hcitool con】
(查看连接状态)
若成功,会显示:
Connections:
< ACL B9:85:09:06:05:7E handle 1 state 1 lm MASTER
表示你的蓝牙设备已经连接!
好了,现在可以关掉超级终端,将搜狗输入法调整到全键盘模式,尽情high吧。
注意:当蓝牙键盘、手机蓝牙关闭,或两者之间连接因各种原因终端,需要重新连接!
不过之后的连接简单多了。
先打开短信,输入
【hidd --connect B9:85:09:06:05:7E 】
里的内容,并复制。我一般存到电话本里,需要连接的时候调用出来,这条命令最关键!
然后打开手机、键盘的开关,将蓝牙键盘调整到配对模式(每次连接都需要)
打开超级终端,输入:
【su】
【hidd --connect B9:85:09:06:05:7E 】
这两条命令
试试,是不是又可以用了?
http://page.renren.com/601028090/note/787284059?op=next&curTime=1323145264000