1

以前に追加したインターフェイスを使用すると、webview で javascriptInterface を追加できなくなりました。デモ1

    this.webView.loadUrl("http://www.google.com");
    this.webView.addJavascriptInterface(test1, "test1");
    this.webView.addJavascriptInterface(test11, "test11");
    this.webView.addJavascriptInterface(test2, "test2");
    this.webView.addJavascriptInterface(test22, "test22");

    this.webView.loadUrl("javascript:window.test1.describle('Hello1');");
    this.webView.loadUrl("javascript:window.test11.describle('Hello11');");
    this.webView.loadUrl("javascript:window.test2.describle('Hello2');");
    this.webView.loadUrl("javascript:window.test22.describle('Hello22');");

デモ2

    this.webView.loadUrl("http://www.google.com");
    this.webView.addJavascriptInterface(test1, "test1");
    this.webView.loadUrl("javascript:window.test1.describle('Hello1');");
    this.webView.addJavascriptInterface(test11, "test11");
    this.webView.addJavascriptInterface(test2, "test2");
    this.webView.addJavascriptInterface(test22, "test22");

    this.webView.loadUrl("javascript:window.test1.describle('Hello1');");
    this.webView.loadUrl("javascript:window.test11.describle('Hello11');");
    this.webView.loadUrl("javascript:window.test2.describle('Hello2');");
    this.webView.loadUrl("javascript:window.test22.describle('Hello22');");

demo2 で、test11 などのインターフェイスを使用すると、obj が見つからなかったと言われます test11

どうしてか分かりません。あなたの提案を楽しみにしています

4

1 に答える 1

5

swap loadUrl and addJavascriptInterface, and might make it.

this.webView.addJavascriptInterface(test1, "test1");
this.webView.addJavascriptInterface(test11, "test11");
this.webView.addJavascriptInterface(test2, "test2");
this.webView.addJavascriptInterface(test22, "test22");
this.webView.loadUrl("http://www.google.com");
于 2012-06-26T04:51:16.637 に答える