用於Java中USB交互的任何API或庫,其中用於寫入的函數將不需要隨其運行的平臺而改變?這樣我的應用程序無論在Windows,Linux還是Mac上都能運行?用於與Java中的USB設備進行交互的跨平臺庫
將由我的應用程序來完成這項工作基本上是
- 獲得USB設備的名稱
- 能告訴我們,如果設備仍然停靠到計算機的用戶註銷之前
- 彈出USB設備[好吧,不物理字面上,這將是荒謬的]就像安全刪除Windows。
- 實時檢測usb設備上已耗盡的空間和空間。
javax-usb-ri-windows : This is an ABANDONED Windows implementation. it does not work, it needs a kernel driver.
而且:
The OS-independent Reference Implementation contains a common partial implementation of javax.usb
我只需要一個API,它是跨平臺和..以及剛剛讀
我對javax.usb - JSR080 project 但在他們的網頁,該說的話發現第一行。
我也試着在libusb的C++和它的Python包裝PyUSB [我愛Python,必須檢查]。但客戶端需要Java代碼。
輝煌的想法.. 但是,你能告訴我如何去「安全地移除」在所有平臺上的USB設備?那肯定會需要一些操作系統特定的代碼? –
@ronnieaka安全刪除實際上是'unmount'操作,這使得設備無法在物理上斷開連接的情況下進行讀/寫_before_。這可以避免數據損壞。在Linux上,它使用'umount'命令完成。不知道窗戶。 –
@ronnieaka:重要的事情:'umount'只有當你想分離文件系統時纔有用。一般來說,它與USB沒有任何關係 - 如果USB設備不是存儲設備(網絡攝像頭,條形碼閱讀器,指紋傳感器等),或者即使USB存儲設備以非常規方式使用(例如,作爲一個DM或LVM組件設備,更不用說作爲交換設備......) – thkala