2017-11-24 23 views
0

私はWebビューで簡単なMacOSアプリケーションを構築しようとしています。私はWKWebViewを使用していますが、何もロードしようとしてもWebビューを使わずにWebビューを初期化した直後に、webViewWebContentProcessDidTerminate()メソッドが呼び出されたのは明らかです。何時間もドキュメンテーションやオンライン上の問題を調査した結果、なぜこれが起こっているのか、それを防ぐ方法を理解することはできません。オンラインで提案された唯一のことは、このような状況が発生したときにWebビューをリロードすることでした。その結果、メソッドが無限に後でもう一度呼び出されるようになりました。私がダウンして、以下のソースコードを完全に空MacOSのアプリになりましたよ:ウェブビューはビュー階層にある場合WKWebViewプロセスが終了する

class AppDelegate: NSObject, NSApplicationDelegate { 

    @IBOutlet weak var window: NSWindow! 
    var webView: WKWebView! 

    func applicationDidFinishLaunching(_ aNotification: Notification) { 
     webView = WKWebView(frame: .zero, configuration: WKWebViewConfiguration()) 
     webView.navigationDelegate = self 
    } 
} 

extension AppDelegate: WKNavigationDelegate { 
    func webViewWebContentProcessDidTerminate(_ webView: WKWebView) { 
     print("web view process did terminate") 
     webView.reload() 
    } 
} 

は、それは問題ではない、非ゼロのフレームを持っており、それは一般的にあれば可視かどうか。私はまた、すべてを試すために任意の負荷を有効にしました。

私は本当にこれについていくつかの助けに感謝します。私は10.13 SDKに対してコンパイルし、MacOS 10.12で動作しています。

ありがとうございました。

答えて

1

私はそれを把握することができました。これに苦労している人は、com.apple.security.network.clientの資格をアプリに追加する必要があります。

関連する問題