通过iOS11文件应用在应用中导入多个文件

Posted

技术标签:

【中文标题】通过iOS11文件应用在应用中导入多个文件【英文标题】:Import multiple files in app via iOS11 files app 【发布时间】:2018-04-22 12:55:27 【问题描述】:

我正在尝试将多个文件从新的 ios11 文件应用程序导入到我的应用程序中。但是,当我在文件应用程序中选择两个或多个文件(均为相同类型,pdf)时,然后点击共享按钮并选择我的应用程序(复制到 myApp)

- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options

只被调用一次,只有我选择的第一个文件被成功导入。

所以我尝试了这是否适用于 Dropbox 或 GoogleDrive 等其他应用程序,但它会导致相同的行为。如果我选择 iOS Mail 应用程序或 Gmail 应用程序(在文件应用程序中点击共享后),我所有选择的文件都会被导入(作为附件)。所以我认为在我自己的应用程序中也必须有一种方法来实现这一点。

【问题讨论】:

这里有一个答案,修改后可以使用:***.com/questions/9973259/… 你能分享你的代码sn-p吗? @ClemensL 你能告诉我如何在我的应用程序中打开文件应用程序,实际上我想将视频导入我的应用程序,所以请给我一些提示 【参考方案1】:

应用程序正在导入的文件实际上被复制到应用程序文档目录中名为“收件箱”的目录中。导入这些文件后,您在那里看到多个文件吗?我认为委托方法可能只调用一次,但如果您正确跟踪文档收件箱目录中的现有/新文件,您可以正确导入多个文件:)

编辑: 这些天该文件夹不称为“收件箱”,但文件夹的名称似乎是您的应用程序的 BundleID。

【讨论】:

在我的例子中,文件位于 tmp/BUNDLE_ID-Inbox 文件夹中。不过你还是解决了我的问题。 @ClemensL 啊,好吧,当然,自 iOS11(或更早)以来,这可能已经改变了。但很高兴听到它解决了您的问题! :) @BobdeGraaf 从 iOS 11.2.1 开始,它的行为是否仍然如此?我发现即使有多个选择,恰好实际上只有一个文件导入到收件箱目录。我什至可以使用 Procreate 或 PDF Expert 等真实世界的应用程序来重现它。 @BobdeGraaf 感谢您的确认。这是我的:rdar://36505593 @HuaTham 关于这个问题有任何更新吗?你有什么解决办法吗?

以上是关于通过iOS11文件应用在应用中导入多个文件的主要内容,如果未能解决你的问题,请参考以下文章

使用 TypeScript 在节点应用程序中导入 JSON 文件

如何在 Pandas Dataframe 中导入多个 excel 文件

如何在 R 中导入和合并多个文件?

什么是从同一个文件中导入多个组件的正确方法,而不是导入每个组件

在组件中导入 javascript 文件并在多个页面上使用时出现 Blazor JSRuntime 问题

在 iOS 中导入文件:UIDocumentPicker 与 UIDocumentBrowser