简单的 HID OSX 应用程序

mat*_*007 3 macos driver hid runloop

我开始为 HID 设备编码。我开始阅读 Apple 文档和示例代码。提供的代码已经过时了,甚至无法在 Xcode8 中打开。

从 Apple 下载示例代码

我需要帮助来查找示例项目/片段以开始使用 HID 服务!打开句柄,向设备读取和写入报告,在运行循环中收听设备生成的报告。

pmd*_*mdj 6

OS X/macOS 的 HID 堆栈称为 IOHIDFamily,其中大部分是开源的。这包括内核和用户空间组件。您可以在以下位置找到各种不同 OS X/macOS 版本的代码

https://opensource.apple.com/

对于 10.12.2(撰写本文时发布的最新代码),您可以在此处浏览 IOHIDFamily 代码:

https://opensource.apple.com/source/IOHIDFamily/IOHIDFamily-870.31.1/

或在此处将其下载为 zip 文件:

https://opensource.apple.com/tarballs/IOHIDFamily/IOHIDFamily-870.31.1.tar.gz

“工具”目录包含一些用户空间示例/测试代码,它们可能有助于您尝试执行的操作。

至于示例代码未更新、文档不完整/过时/缺失、提供的代码需要大量构建:欢迎来到 Mac 系统和驱动程序开发。不幸的是,事情就是这样。我已经从事 OS X 内核/驱动程序工作 7 年了,虽然随着经验的积累,有些事情会变得更容易,但从 Apple 下载代码并构建它仍然感觉像是在玩彩票。