2011-05-05 128 views

回答

3

本答案是在添加應用程序級USB Host APIs之前,在有關歷史Android版本的問題中編寫的。當代讀者應該看到關於現代Android版本的主機模式的許多其他問題

您需要將合適的usb-serial設備驅動程序編譯到您的內核中或作爲模塊加載到它中,並手動創建/ dev/ttyUSB0設備文件或具有自動創建它的內容。

而且我們假設您的轉換器已插入正在工作的USB主機端口,該主機端口提供電源並具有支持它的主機模式驅動程序。

從本質上講,它的工作方式與在桌面Linux上的方式相同 - 您可能需要在桌面Linux上嘗試轉換器以找出它正在使用的驅動程序。

如果平板電腦沒有開箱即用,很可能需要對其進行根目錄,才能加載驅動程序模塊(或更改內核),在/ dev中創建節點(文件)並設置權限以便程序可以訪問它。

訪問將通過打開設備文件,調用一些ioctl的配置它,然後只是讀寫。打開和配置可能需要jni本地代碼(儘管你可以從java中完成),然後你應該可以讀寫java。

另一個值得研究的方法是使用藍牙串口適配器 - 這更獨立於設備,可能不需要生根。

+0

感謝@chris的詳細解答。我終於選擇了藍牙串行適配器選項,因爲我需要一些可以開箱即用,不需要更改內核的東西。 Android 3.1已經發布了用於USB的API,但它支持平板電腦而不支持手機。 – Neha 2011-06-01 06:47:45

+0

這仍然是一種全新的使用方式?我的意思是,如果我需要轉換通過USB接收到的電信號,它會是一樣的?或者是什麼? – Ibrahim 2017-11-21 22:29:56

相關問題