macOS App开发和发行版本之间的行为不同

时间:2019-11-21 01:27:58

标签: swift xcode macos wkwebview nswindow

我创建了一个macOS应用程序,按一下按钮即可启动另一个带有WKWebView的NSWindow。在开发应用程序并通过Xcode中的“运行”按钮启动应用程序时,WKWebView可以很好地加载并显示网页。但是,当我存档应用程序并将其导出为.app文件并独立于Xcode运行时,它不会加载WKWebView,而只会显示一个空的NSWindow。

有人知道问题可能在这里吗?

非常感谢和问候

编辑:

我测试过启动另一个带有ViewController和简单标签的NSWindow。这很好。这是代码:

myWindow = NSStoryboard(name: NSStoryboard.Name("Main"), bundle: nil).instantiateController(withIdentifier: "testWindow") as? NSWindowController
myWindow?.showWindow(self)

一旦我用一个空的WKWebView替换了标签,现在在没有Xcode的情况下测试时应用程序就会崩溃。在Xcode中,它可以正常启动。

Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
Exception Codes:       KERN_INVALID_ADDRESS at 0x000017781d5f58a0
Exception Note:        EXC_CORPSE_NOTIFY

Termination Signal:    Segmentation fault: 11
Termination Reason:    Namespace SIGNAL, Code 0xb
Terminating Process:   exc handler [5905]

VM Regions Near 0x17781d5f58a0:
    __LINKEDIT             0000000114a12000-0000000114a39000 [  156K] r--/rwx SM=COW  /usr/lib/dyld
--> 
    MALLOC_NANO            0000600000000000-000060000339a000 [ 51.6M] rw-/rwx SM=ZER  

1 个答案:

答案 0 :(得分:0)

我刚发现,问题是链接,我需要在构建阶段将Webkit添加到链接的库中,现在它可以正常工作。