iTunes 文件共享 - 无法写入收件箱

发布于 2024-12-26 16:52:38 字数 786 浏览 3 评论 0原文

允许通过 iTunes 文件共享添加内容的应用程序如何利用收件箱文件夹?具体来说,有些应用程序通过将文件从顶层移动到收件箱来处理拖到 iTunes 文件共享的文件。我可以看到文件从视图中消失,并看到收件箱被创建并且文件大小增长。

在我们的测试中,收件箱不允许通过 NSFileManager 将文件移动或复制到其中。我们看到了各种写入失败的错误。这与 文件系统编程指南,说明它用于:

外部实体(例如邮件)要求您的应用打开的文件...您的应用可以读取和删除此目录中的文件,但无法创建新文件或写入现有文件。

因此,我们通过为通过 iTunes 传入并正在导入的文件创建一个 ImportQueue 文件夹来解决这个问题。它似乎工作得很好,但我有点不舒服,因为我不知道其他应用程序如何以及为什么使用 Inbox 通过 iTunes 将文件添加到他们的应用程序中。

洞察力非常赞赏。

PS - 我并不是指在单独的应用程序(例如 Mail、Dropbox)中选择文件并选择“打开方式...”来启动我的应用程序。我已经成功处理了该场景,并且 Inbox 正在按此场景的预期工作。

How are applications that allow content to be added through iTunes File Sharing utilizing the Inbox folder? To be specific, there are apps that process files dragged to iTunes File sharing by moving the file from the top level to the Inbox. I can watch the file disappear from view, and see the Inbox get created and its file size grow.

In our testing, the Inbox would not allow files to be moved or copied to it via NSFileManager. We see errors of the failed-to-write variety. This is consistent with the info in the File System Programming Guide, stating that it is for:

files that your app was asked to open by outside entities (e.g mail)...Your app can read and delete files in this directory but cannot create new files or write to existing files.

So we have worked around it by creating an ImportQueue folder for files that come in via iTunes and are being imported. It seems to work fine, but I'm slightly uncomfortable not knowing how and why other apps seem to utilize Inbox for file additions to their app through iTunes.

Insight greatly appreciated.

PS - I am not referring to selecting a file in a separate app (e.g. Mail, Dropbox) and choosing "Open In..." to launch my app. I am already handling that scenario successfully, and Inbox is working as expected for this scenario.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文