【问题标题】:Trigger event in app with DirectoryWatcher.m使用 DirectoryWatcher.m 在应用中触发事件
【发布时间】:2016-04-07 19:41:22
【问题描述】:

我正在查看:Apple : DocInteration 代码,他们提供了一个 DirectoryWatcher.m,用于监视应用程序文档目录中的目录更改。

每当用户与Microsoft Outlook App 共享文件时,应用程序都会直接将该文件附加到邮件中。 基本上,当文件被复制到其文档目录时,它会触发一个事件。 我也想触发一个事件(不预览文档) 我怎么做 ? 他PDF Viewer Source Code 也这样做了,并正在触发应用程序打开在他的自定义查看器中复制的 PDF 文件。但它仅在应用程序处于后台然后变为活动状态时才会这样做。 我想让应用程序(即使终止状态)在与该应用程序共享文件时触发事件。

【问题讨论】:

  • 你找到更好的方法了吗?

标签: objective-c ios9 nsdocumentdirectory


【解决方案1】:

从其他应用接收文件:

基本上,您必须在应用中启用该功能。

来自Apple doc

从其他应用程序打开文件

系统可能会要求您的应用打开特定文件并将其呈现给用户。这通常是因为另一个应用程序遇到了您已注册支持的类型的文件。在这种情况下,系统会为您的应用提供文件的 URL,并将您的应用置于前台。

如果某个应用已被系统注册,您可以从其他应用中唤醒该应用。

Apple Doc: Registering the File Types Your App Supports

https://stackoverflow.com/a/26351211/2707614

当一些数据发送到您的应用程序时,它还会调用委托:

func application(application: UIApplication, openURL url: NSURL [...]

要将文件发送到其他应用:

您可以使用系统提供的“Open In”功能。

Apple Doc: Open In class

A github example 供 UIDocumentInteractionController 使用。

【讨论】:

  • 我知道直到添加每种类型的数据。但是我不知道当新文件复制到应用程序时如何触发事件。
猜你喜欢
  • 1970-01-01
  • 2016-05-28
  • 2016-01-30
  • 1970-01-01
  • 2010-10-02
  • 2017-06-18
  • 2013-02-07
  • 1970-01-01
  • 2010-12-20
相关资源
最近更新 更多