我读过Apple的" 纸板编程指南",但它没有回答我的特定问题.
我正在尝试编写一个Cocoa应用程序(用于OS X,而不是iOS),它将跟踪写入普通粘贴板的所有内容(因此,无论何时任何应用程序复制和粘贴,但不是,例如,拖放,也使用NSPasteboard).我可以(几乎)通过基本轮询后台线程上的常规粘贴板并检查changeCount来完成此操作.当然,这样做会让我觉得内心很脏.
我的问题是,有没有办法让粘贴板服务器在对普通粘贴板进行更改时通过某种回调通知我?我在NSPasteboard类引用中找不到任何内容,但我希望它潜伏在其他地方.
我可以想象实现这一点的另一种方法是,如果有一种方法可以将一般的粘贴板实现替换为NSPasteboard的子类,我可以定义自己来发出回调.也许这样的事情可能吗?
如果公共的App Store合法API可以实现这一点,我会更加喜欢,但如果需要使用私有API,我也会这样做.
谢谢!