我正在编写一个简单的Mac应用程序,该应用程序使用Swift处理可移动磁盘上的文件,我需要确定是否弹出或插入了可移动磁盘,以便刷新UI中的可用磁盘列表。
我似乎看不到一种明显的方法。似乎FSEvents可以监视文件更改,但是从根级别进行监视将对应用程序造成极大的破坏,只是为了确定是否已插入(或通过Finder)新磁盘。
我还尝试使用NSFilePresenter监视/ Volumes /路径,但似乎没有任何通知。
class ViewController: NSViewController, NSFilePresenter {
var presentedItemURL: URL? = URL(fileURLWithPath: "files:///Volumes/")
var presentedItemOperationQueue: OperationQueue = OperationQueue.main
private func presentedSubitemDidChangeAtURL(url: NSURL) {
print("Change file noticed in URL: \(url)")
let pathExtension = url.pathExtension
}
..