2012-12-04 25 views

回答

0

我相信這是因爲Java/JNI環境中沒有運行循環。

看看javahidapi是如何實現的,特別是它如何創建一個單獨的線程來運行hid_runloop_thread(),然後調用CFRunLoopRunInMode()直到它返回成品/取消狀態。

請注意,運行循環是線程特定的,因此您需要在調用CFRunLoopRunInMode()之前從同一線程執行您的CFRunLoopAddSource()IOServiceAddMatchingNotification()調用。