2

macOS Catalina 10.15.2

Xcode 11.3 斯威夫特 5

在 Widget 中执行的以下代码在完成时始终返回“false”:

extensionContext?.open(myAppUrl, completionHandler: { (success) in  
  if (!success) {  
  os_log("Failed to open app from Today Extension", log: OSLog.mylogs, type:.error )  

  }  

包含小部件扩展的主应用程序位于 Applications 文件夹中,可以通过 Automator 工作流程中的“打开 URL”启动。系统日志中没有错误消息。在小部件模拟器和实时 Today/Notification 应用程序下启动尝试失败。否则,主应用程序和 wiidget 将按预期工作。

这个问题看起来很像这个

任何建议表示赞赏。

我在 Mojave 系统上得到了相同的结果。在进一步搜索中,我发现了这篇2014 年的文章。此代码有效:

let sharedApp = NSWorkspace.shared  
  if !(sharedApp.open(myAppUrl)) {  
  os_log("Failed to open app from Today Extension", log: OSLog.mylogs, type:.error )  
  }  

Apple 似乎从未在 OSX 中添加代码来支持最新的 Today Widget Extension 文档。

4

0 回答 0