Tag: privateapi iokit

IOHIDEventSystemClientScheduleWithRunLoop与EXC_BAD_ACCESS

我试图在我的应用程序中获取触摸事件。 所以我使用了IOHIDFamilycallback来获取事件。 我的代码是这样的: void handle_event(void* target, void* refcon, IOHIDServiceRef service, IOHIDEventRef event) { printf("Received event of type %2d from service %p.\n", IOHIDEventGetType(event), service); } – (void)viewDidLoad { [super viewDidLoad]; void *ioHIDEventSystem = IOHIDEventSystemClientCreate(kCFAllocatorDefault); IOHIDEventSystemClientScheduleWithRunLoop(system, CFRunLoopGetCurrent(), kCFRunLoopDefaultMode); IOHIDEventSystemClientRegisterEventCallback(system, handle_event, NULL, NULL); CFRunLoopRun(); } 执行时出现错误: IOHIDEventSystemClientScheduleWithRunLoop(system,CFRunLoopGetCurrent(),kCFRunLoopDefaultMode); IOKit`IOHIDEventSystemClientScheduleWithRunLoop: … 0x32f8fd14:cmp.w r10,#0 0x32f8fd18:strd r10,r11,[r4,#116] <— EXC_BAD_ACCESS(code = EXC_ARM_DA_ALIGN) 0x32f8fd1c:beq […]