kotlin Android与JavaScript如何交互
什么是JS交互: 说的通俗一点就是前端一些调用不了原生代码的功能,或者在一些复杂页面和混排页面上,原生没有网页来得快,所以在实际项目中,很多情况下都是原生页面掺杂着webView 加载js的网页的,这就涉及到两者之间的交互以及传值问题。 Android调用JS方法: 通过WebView的loadUrl()调用(API小于等于18使用) 通过WebView的evaluateJavascript()调用(API大于18使用) JS调用Android方法: 通过WebView的addJavascriptInterface() 通过WebViewClient的shouldOverrideUrlLoading()回调拦截url 通过 WebChromeClient 的onJsAlert()、onJsConfirm()、onJsPrompt()方法回调拦截JS对话框alert()、confirm()、prompt()方法 由于方法二和方法三使用方法复杂,大多数同学使用的都是方法一,但是方法一存在严重漏洞,这里不做过多介绍。 Android调用Js方法 1、把需要测试的js代码放到src/main/asserts文件夹下,测试代码如下 2、配置wevView属性,并写一个测试按钮进行点击监听 由于是测试,我把js代码文件放到了asserts进行加载测试,实际项目中是加载的链接,道理都一样