如何使signalEnumerator(for:identifier)调用相关的enumerateChanges方法



在macOS FileProvider扩展中,当我调用时:

manager.signalEnumerator(for: identifier) { error in
print("Signal completed with error: (error)")
}

其中identifier是包含远程更改的相关文件夹的标识符,系统不对相关FileProviderEnumerator调用enumerateChanges方法。

另一方面,如果我调用

manager.signalEnumerator(for: .workingSet) { error in
print("Signal completed with error: (error)")
}

在那里系统适当地调用相关的CCD_ 4方法。

有没有办法确保为所提供的itemIdentifier调用enumerateChanges?或者,当我提供文件夹项目标识符时,系统为什么不调用enumerateChanges方法,有什么解释吗?

下面的注释可以在使用推送通知来通知的变化中找到

使用NSFileProviderReplicatedExtension时,请始终将容器标识符设置为NSFileProviderWorkingSetContainerItemIdentifier。系统会自动将任何工作集更改传播到用户界面,而无需向各个容器发出信号。它忽略任何其他标识符。

相关内容

  • 没有找到相关文章

最新更新