绑定到媒体键,阻止iTunes OS X.

Dan*_*orf 11 macos cocoa objective-c

我一直在使用这里描述的方法:http://weblog.rogueamoeba.com/2007/09/29/

并阅读此主题:绑定到OSX 10.5下Apple键盘上的媒体键

我已经重写了sendEvent类,并且可以检测媒体键输​​入.问题是当按下"播放"按钮时iTunes会启动.上面提到的线程表明iTunes挂钩到其他地方(未知)的事件,因此没有办法阻止它获得播放/暂停(F8)事件.

作为一种解决方法,我一直打开没有文件的Quicktime Player.但是,在Mountain Lion上,Quicktime显然在一段时间不活动后自行关闭,从而使这种解决方法变得不可行.

我知道Spotify和MPlayerX等应用程序能够以某种方式实现这一目标.他们似乎完全阻止了这个事件,而不仅仅是iTunes.

更多谷歌搜索,我发现这个discussion.apple.com/thread/2122639?start=210&tstart=0跟踪它到远程控制守护进程通过Applescript进行调用.有一些解决方法会删除rcd守护程序的执行权限(需要sudo,必须在OSX更新时重新运行).nomitsu.com/contents/MMFix_src.tgz

有没有人对他们(MPlayerX,Spotify)能够做到这一点的方式有什么了解?

谢谢你的建议.

Dan*_*orf 16

我发现了一个预先存在的类,它将执行此操作:http://overooped.com/post/2593597587/mediakeys

哇,这需要一些寻找!希望它可以帮助别人!

  • +1 GitHub页面:[SPMediaKeyTap](https://github.com/nevyn/SPMediaKeyTap).感谢分享 :) (8认同)