搜索
写经验 领红包

adoid调用js方法(adoid调用js函数)

导语:Android 调用 JS

android调用js方法(android调用js函数)

通过WebView的loadUrl()

通过WebView的evaluateJavascript()

方式1:通过WebView的loadUrl()

js

Android

这个时候就可以简单的吊起了,但是为什么loadUrl这么牛逼让我们看看源码吧

首先checkThread是个啥

可以看到我们的最佳实践是保证webview相关的操作要保持和webview的加载线程是一致的

这就来了个一个问题,我子线程去吊起js的代码我的webview会不会崩掉

话不多是让我们试一下

看图

正常使用只是爆出了一个异常,但是我们应该尽力避免这种事情,换句话说webview既然在主线程,webview的操作那也都应该发生在主线程中。

所以列出一个推荐的使用方式吧

注意

new Runnable不是新开线程!

JS代码调用一定要在 onPageFinished()回调之后才能调用,否则不会调用。onPageFinished()属于WebViewClient类的方法,主要在页面加载结束时调用

方式2:通过WebView的evaluateJavascript()

吊起代码

版本号过低则发生如下

总结: 我么可以看到方法二这个限制是致命的,因为前端需要兼容ios与Android两个端的交互响应对他们来说越是普适性的越是需要的,版本过低直接不支持。。。太坑

本文内容由快快网络小海创作整理编辑!