0

执行以下代码时,应用程序可能会崩溃。

代码: self.documentInteractionController = [UIDocumentInteractionController interactionControllerWithURL:targetURL];

崩溃日志: 由于未捕获的异常“NSGenericException”而终止应用程序,原因:“UIDocumentInteractionController 不可用”

这个问题或任何替代课程有什么解决方案吗?

4

2 回答 2

2

尽管文档说了什么,但它在 Catalyst 中不可用。

您可以探索使用 AppKit 替代品(QLPreviewPanel),但您必须做一些黑客攻击才能使其从 Catalyst 应用程序中工作: https ://stackoverflow.com/a/32814132/1601849

于 2021-01-03T03:05:32.413 回答
0

如果您想保留与 OSX 10.5 的兼容性,可以执行以下检查:

if UIDevice.current.systemName == "Mac OS X" {
   let version = Int (UIDevice.current.systemVersion.prefix (2)) ?? 10
   if version > 10 {
      self.documentInteractionController = [UIDocumentInteractionController interactionControllerWithURL:targetURL];
   } else {
      //do something
   }
} else {
   self.documentInteractionController =[UIDocumentInteractionController interactionControllerWithURL:targetURL];


}
于 2021-02-02T01:12:34.940 回答