【问题标题】:Airdrop custom document type to SwiftUI DocumentGroup app将自定义文档类型空投到 SwiftUI DocumentGroup 应用程序
【发布时间】:2022-11-22 18:11:18
【问题描述】:

我正在尝试让一个简单的 SwiftUI iOS 自定义文档应用程序与 Airdrop 一起工作。从文件或邮件附件打开时,该应用程序会成功打开文档。但是,当从我的 mac 通过 Airdrop 发送自定义类型的文档时,当从 Airdrop 通知中选择该应用程序时,该应用程序启动但仅显示文件浏览器并且文件似乎没有被复制。不显示文档组视图。

如果我从 Airdrop 菜单中选择文件,我可以保存文件。

我在 Apples sample code 上针对基于文档的应用程序进行了尝试,它在我的 iPhone (iOS 16.0.2) 上表现出完全相同的行为。这要么是一个错误,要么需要一些额外的秘方才能让 SwiftUI Document 应用程序通过 Airdrop 接收文件。

我的自定义类型符合 public.content,据我所知,这是 Airdrop 支持所必需的。

有没有人设法让 Airdrop 接收与 SwiftUI 文档应用程序一起工作?

【问题讨论】:

    标签: swiftui airdrop documentgroup


    【解决方案1】:

    我遇到了同样的问题。

    到目前为止我发现了什么:

    1. 通过 Airdrop 收到的文件放在您的“收件箱”文件夹中。该目录位于:

    let docUrl =  FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first!
    

    您可以将 UIApplicationDelegate 和 UISceneDelegate 添加到您的 swiftui 应用程序。当通过 Airdrop 收到新文件时,您会在此处获得触发器。

    func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>)
    

    当您在浏览器中使用 URL 打开您的应用程序时,通常会触发此功能。

    我正在等待 DocumentGroup 中的集成解决方案。

    https://developer.apple.com/documentation/swiftui/documentgroup

    【讨论】:

      猜你喜欢
      • 2021-07-06
      • 2015-07-05
      • 2010-12-25
      • 2018-10-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多