userContentController从未被调用

问题描述 投票:1回答:1

我正在尝试在我的iOS应用中使用WKScriptMessageHandler来捕获来自javascript的某些消息。

我正在使用javascript中的函数进行此操作:

var dict = { "favourite": "true", "id": "id" };
webkit.messageHandlers.callbackHandler.postMessage(dict);

并且在iOS中,我像这样设置WebView:

let contentController = WKUserContentController()
contentController.add(self, name: "callbackHandler")
let config = WKWebViewConfiguration()
config.userContentController = contentController
webview = WKWebView( frame: view.bounds, configuration: config)
view.insertSubview(webview!, at: 1)

在loadView()方法中。

我的ViewController像这样实现WKScriptMessageHandler及其方法userContentController:

func userContentController(_ userContentController: WKUserContentController, didReceive message: WKScriptMessage) {
    print("in")
}

但是无论我如何尝试,都不会调用方法userContentController。

ios swift wkwebview
1个回答
0
投票

使类符合协议“ WKScriptMessageHandler”

class MyClass : WKScriptMessageHandler{

}
© www.soinside.com 2019 - 2024. All rights reserved.