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功能,並帶上鍵盤驅動。
可以摺疊的話更方便攜帶

此條目發表在 信息處理 分類目錄,貼了 , , , 標籤。將固定鏈接加入收藏夾。

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

發表評論