我的应用程序会将一些文件放入垃圾箱,但也会实现撤消以将其再次撤回。我需要知道用户是否清空了垃圾桶,以便我可以清空我的撤销堆栈。
我是否需要监控文件系统事件才能实现此目的,还是有更简单的方法?
答案 0 :(得分:2)
你可能不得不最后看〜/ .Trash,但是在清空垃圾箱时发布的通知。它的名称是"com.apple.carbon.core.DirectoryNotification"
(也在其他时间发布),但它似乎在userInfo中没有任何内容。但是,它确实有一个字符串作为对象,因此可能包含一些相关信息。我的快速测试似乎表明它没有。 (它看起来像一个像"FNObject 555279-101"
)
答案 1 :(得分:1)
您可以使用UKKQueue来观看文件更改(空捶打)通知:
http://www.cocoadev.com/index.pl?UKKQueue
答案 2 :(得分:0)
另一种选择是使用FNSubscribe
或FNSubscribeByPath
。通知不会告诉您发生了什么,只是您订阅的目录发生了什么。