warldge 2022-03-06 13:38 采纳率: 52.6%
浏览 8
已结题

webview 跳转后仍可调用 java 的方法?

webview 跳转后仍可调用 java 的方法?
我在Activity中使用webView.addJavascriptInterface(MainActivity.this, "android");以及在方法上方加@JavascriptInterface的方法使webview可调用java中的方法,但当webview中发生地址的跳转后再进行调用,出现报错 : java exception was raised during method invocation. 网上说跳转到的页面是Activity生成的子线程,所以无法与java交互,但我写的另一个java方法却可以调用,想问下这种情况下该怎么办才能使跳转页面可以调用java方法?谢谢.

  • 写回答

1条回答 默认 最新

  • 不会写代码的猴子 优质创作者: 操作系统技术领域 2022-03-06 18:11
    关注
    webView.setWebViewClient(new WebViewClient() {
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
          //TODO在这里根据重定向url来进行java操作
            return true;
        }
        @Override
        public void onPageFinished(WebView view, String url) {
            super.onPageFinished(view, url);
        }
        @Override
        public void onPageStarted(WebView view, String url, Bitmap favicon) {
            super.onPageStarted(view, url, favicon);
        }
        @Override
        public void onReceivedSslError(WebView view, final SslErrorHandler handler, SslError error) {
        }
    });
    
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 3月7日
  • 创建了问题 3月6日