首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在NPAPI插件中处理CGEventTaps

在NPAPI插件中处理CGEventTaps
EN

Stack Overflow用户
提问于 2011-12-28 06:51:15
回答 1查看 208关注 0票数 0

我正在尝试创建一个NPAPI插件来监听macbook上的媒体密钥,并将其传递给javascript以控制pandora或soundcloud之类的东西。我使用的是Spotify的SPMediaKeyTap库,它只包装了在单独线程上运行的CGEventTap。

我的问题是我使用npn_invoke回调javascript。这正常工作,但是当它从CGEventTap回调触发时,它会使插件崩溃。我意识到这需要从插件线程运行,我已经尝试通过使用NSObject performSelectorOnMainThread和NSObject performSelector:onThread将其传递回主线程,并将其与我存储在主插件线程创建方法中的线程一起使用。这两种解决方案在任何npn调用时都会崩溃。在处理导致状态对于NPN浏览器交互调用无效的CGEventTap事件时,还会发生其他事情吗?

EN

回答 1

Stack Overflow用户

发布于 2012-01-11 00:14:41

不要试图通过像这样保存线程来猜测线程模型;只需使用performSelectorOnMainThread调用NPN方法即可。我一直都在这样做,它工作得很好,所以我猜你的跨线程编组方法中的一些东西没有按它需要的方式工作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8650094

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档