我正在創建一個Android應用程序,需要訪問Broadcomm單芯片(集成Wifi +藍牙+ FM)芯片URL的設備驅動程序:http://www.broadcom.com/products/Wireless-LAN/802.11-Wireless-LAN-Solutions/BCM4334。如何通過Android操作系統中的Java訪問設備驅動程序?
Broadcomm據說允許訪問Android操作系統上的設備驅動程序,並將其實現打開。
該應用程序的功能是無關緊要的。
1)通過Android中的Java訪問設備驅動程序的最佳方式是什麼?
2)是否使用JNI訪問設備驅動程序是一個好方法?
3)使用NDK必要或者是SDK足夠了,因爲我只是訪問設備驅動程序&沒有實際編寫本地代碼?
4)當我走下這條道路時,還有其他重要的建議嗎?
也請不用客氣只有當你已經開發了類似的應用程序或一個專家,我不想與50點不同的意見,這將讓我困惑落得迴應。
非常感謝。
是的Broadcomm芯片沒有3G。 但是,正如我所提到的,應用程序的功能與問題無關,因此您不能建議我使用Android Bluetooth或Wifi API,如果我想要的話,我會! 我問了三個明確和明確的問題: 1)什麼是最好的方式,詳細訪問設備驅動程序通過Java中的Android? 2)是否使用JNI訪問設備驅動程序是一種好方法? 3)是否使用NDK或SDK是否足夠,因爲我只是訪問設備驅動程序而不是實際編寫本機代碼? – cyber101
請再次嘗試閱讀我的答案 - 「不同的驅動程序有不同的接口,例如Wi-Fi驅動程序通過基於IOCTL的WE API(需要本機代碼)進行控制」。藍牙驅動程序也通過基於IOCTL的HCI API進行控制。沒有直接的方式從Java發送IOCTL,所以需要本地代碼和JNI。 – msh
好的給出你的答案,什麼是與驅動程序「溝通」的最佳方法,例如Broadcomm上的FM驅動程序,但沒有Android/Java軟件包。我基本上需要編寫一個Java/JNI封裝來訪問broadcomm芯片上的FM驅動程序? 1)什麼是步驟(我如何在Android文件系統中看到驅動程序?)2)我需要什麼特定的工具,ndk?3)你能否詳細介紹如何調查和開始這個過程?謝謝 – cyber101