如何在iOS平台上监控文件变化?

7
我发现有一些用于监控Mac文件更改的库,例如:https://github.com/bdkjones/VDKQueue,但我没有找到一个适用于iOS平台监控文件更改的库。

请问有人知道如何在Objc封装中监控文件变化吗?

谢谢!


你想要监控什么以及为什么?可能有重复问题:http://stackoverflow.com/questions/19632106/file-system-watching-in-ios - Wain
Wain,因为我想在文件中写入相同的数据时得到通知。我曾经看过你附加的链接,但似乎该链接只对字典监视有用。 - TinyMonk
2个回答

9
在iOS上进行文件监控是通过创建GCD所谓的“调度源”来实现的,用于监视您想要监视的任何文件或文件夹。创建调度源时,您需要提供三个有趣的事情:
  1. 指向文件或文件夹的文件描述符
  2. 用于描述您希望收到通知的事件类型的标志(文件被修改,文件被写入等)
  3. 发送这些事件通知的队列(主队列、后台队列等)
创建调度源后,您可以设置代码块,在事件发生或源被取消(销毁)时执行。在为事件发生设置的块中,您可以确定发生了哪个事件(如果注册了多种类型),并相应地使用if...else...then或switch...case语句进行处理。
我正在创建一个可移植的Objective-C类,将简化此过程,但同时,您应该查看我在GitHub上发布的演示项目,它展示了如何实现我所描述的内容。 编辑:

iMonitorMyFiles现在可以通过CocoaPods获取。要安装它,只需在您的Podfile中添加以下行:

pod 'iMonitorMyFiles', '~> 0.1.0'

iOS 11及以上版本的Files应用程序中是否可以监视目录? - ViruMax

2

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接