通过macOS 13上的NSSharingServicePicker将文件夹共享到iOS设备



在我的应用程序中,我使用NSSharingServicePicker共享导出。这一切在macOS 11和macOS 12上运行良好。不过,在macOS 13上,共享文件夹到运行iOS 15或iOS 16的iOS设备会出现一个奇怪的问题。这不是共享问题,例如pdf文档,仅当共享文件夹时:

let picker = NSSharingServicePicker(items: [exportURL])
picker.delegate = self
picker.show(relativeTo: myShareButton.bounds, of: myShareButton, preferredEdge: .maxY)

拾取器出现了,我可以成功地将文件夹共享到邮件、Notes.app或其他任何东西。通过AirDrop共享到iOS设备,但最终设备上的文件夹为空。

如上所述,这不是macOS 11和macOS 12的问题。

对此有什么想法吗?

刚刚发现,如果我将URL重新打包到fileSytemURL中,它会按预期工作。这是一个错误,但我仍然不明白为什么系统会对同一事物的这两种表示产生影响。

let wrappedURL = URL(fileURLWithPath: (exportURL as NSURL).fileReferenceURL()!.path)
let picker = NSSharingServicePicker(items: [wrappedURL])
picker.delegate = self
picker.show(relativeTo: myShareButton.bounds, of: myShareButton, preferredEdge: .maxY)

最新更新