2013-01-16 57 views
3

我喜歡Android上的USB調試,因爲它比模擬器快。我知道我可以在模擬器中使用我的鍵盤,但在調試時我想使用我的電腦鍵盤(插入計算機)而不是設備鍵盤來使輸入速度更快。那可能嗎?在Android USB調試模式下,USB調試時可以將我的電腦鍵盤作爲輸入設備連接到我的手機嗎?

+0

澄清 - 在實際設備上,鍵盤插入?如果是這樣的話,取決於內核是否具有USB-OTG支持...什麼是Android版本? – t0mm13b

+0

通常,Android設備將不能在USB主機模式和USB設備模式下同時運行AFAIK。在某些設備上可能會有可能(可能使用自定義ROM),但我不會指望它在絕大多數手機上工作。 – Michael

+0

USB主機支持可以正式使用,並且可以在我嘗試的兩種設備上使用。 – h22

回答

3

我發現了一種可能性,通過「adb工具」。通過USB線將手機連接到計算機,並在計算機終端啓動adb(例如,Ubuntu的)

adb shell input keyboard text Hello  

adb shell input [<source>] <command> [<arg>...]  

這會給你通過電腦/筆記本電腦鍵盤發送文字/擊鍵到智能手機的可能性。

測試Ubuntu 14.04 LTS和三星Galaxy S3與CyanogenMod。

1

聽起來好像您想通過PC上的某些軟件使用PC的鍵盤,而不是使用連接到Android設備的單獨的USB鍵盤。

這實際上是可能的,但細節是設備特定的。您需要通過adb發送重要事件,但您需要確定特定於實現的事件代碼翻譯,甚至事件通道編號。這樣做有可能是開源項目,你最好從頭開始,而不是從頭開始開發它。

至於使用一個單獨的USB鍵盤,正如評論中提到的,這是一些更新設備的可能性(通常您需要將ID引腳接地的適配器電纜),但介紹了無法使用USB亞行以及一個鍵盤。一種可能的解決方法是將ADB置於TCP /無線模式,拔掉電腦並插入鍵盤。更簡單的方法可以是使用藍牙鍵盤。

請注意,USB或藍牙鍵盤以及按鍵事件方法都可能導致屏幕鍵盤彈出。試圖使用帶有外部鍵盤的設備的人會發現這種煩人的現象,並傾向於在屏幕鍵盤上安裝零高度;然而,如果你正在測試一個實際的用戶會做什麼,那麼彈出鍵盤會給最終用戶的體驗留下更真實的印象(當然,鍵盤之後留下的屏幕空間數量會隨着設備而變化)。

+0

我想將鍵盤連接到我的電腦。我不想將它連接到設備的物理上。 – NinjaCoder

+0

是的,這是我首先通過adb注入關鍵事件描述的。 –

0

將您的鍵盤直接插入到Android USB OTG端口,它將工作。最近的大多數Android設備都支持USB主機模式,只有少數模式有意刪除此功能(Google)。還有一個很好的our guestion about this

使用我的Google Galaxy Nexus和聯想平板電腦,即使是鼠標工作(出現鼠標指針)。您可能可以使用允許在兩臺計算機之間共享鍵盤的USB開關。還要注意,你需要USB OTG而不是USB設備轉換器(有一些USB轉換器很適合微型USB OTG端口,但只適用於USB設備)。

當然,如果ADB已經被鍵盤佔用,ADB就不能使用USB端口。因此,您需要使用無線進行ADB。

本提案並不完全符合您的初步想法,但看起來與您打算實現的目標相匹配(使用鍵盤直接在設備上調試Android應用程序)。

4

Share KM是一款免費的應用程序,可讓您使用電腦的鍵盤和鼠標來控制您的Android。連接可以通過USB,WiFi或藍牙進行。

它的作用非常類似於將附加顯示器添加到計算機中–將鼠標移動到屏幕邊緣並且光標移動到Android。

+0

非常感謝!共享KM非常棒。 – jwrush

相關問題