linux和安卓交互,Android中webview和js之间的交互及注意事项
1.Android中利用webview调用网页上的js代码。
Android 中可以通过webview来实现和js的交互,在程序中调用js代码,只需要将webview控件的支持js的属性设置为true,,然后通过loadUrl就可以直接进行调用,如下所示:
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.loadUrl("javascript:test()");
2. 网页上调用android中java代码的方法
在网页中调用java代码,需要在webview控件中添加javascriptInterface。如下所示:
mWebView.addJavascriptInterface(new Object() {
public void clickOnAndroid() {
mHandler.post(new Runnable() {
public void run() {
Toast.makeText(Test.this, "测试调用java", Toast.LENGTH_LONG).show();
}
});
}
}, "demo");
在网页中,只需要像调用js方法一样,进行调用就可以。
3. Java代码调用js并传参
首先需要带参数的js函数,如function test(str),然后只需在调用js时传入参数即可,如下所示:
mWebView.loadUrl("javascript:test('aa')");
4.Js中调用java函数并传参
首先一样需要带参数的函数形式,但需注意此处的参数需要final类型,即得到以后不可修改,如果需要修改其中的值,可以先设置中间变量,然后进行修改。如下所示:
mWebView.addJavascriptInterface(new Object() {
public void clickOnAndroid(final int i) {
mHandler.post(new Runnable() {
public void run() {
int j = i;
j++;
Toast.makeText(Test.this, "测试调用java" + String.valueOf(j), Toast.LENGTH_LONG).show();
}
});
}
}, "demo");
然后在html页面中,利用如下代码
,即可实现调用
注意:在html页面中,不支持css样式的伪类事件(即已被注释的代码)。
例如:
.zhantin01{width:1000px; height:492px; margin:0 auto;background:url(images/zt01.jpg) no-repeat 0 0; position:relative}
.zhantin01 a,.zhantin01 div{opacity:0.5; background-color:#f00; position:absolute;left:0;top:310px;width:40px; height:50px;}
.zhantin01 .zg01{width:100px; height:100px;}
/* .zhantin01 a:link,.zhantin01 a:visited{opacity:0;} */
/* .zhantin01 a:hover{opacity:0.5;} */
/* .zhantin01 a.point:link,.zhantin01 a.point:visited{opacity:0.5;} */
如果这样写,在html页面中将不能调用Android页面的java代码。
linux和安卓交互,Android中webview和js之间的交互及注意事项相关推荐
- Android中WebView与JS的交互
转载请注明:http://blog.csdn.net/feather_wch/article/details/79364349 介绍Android中通过WebView与web页面交互的知识点. 分为三 ...
- android webview调js方法,Android中WebView与H5的交互,Native与JS方法互调
项目中经常用到WebView与H5的交互,一个是H5调本地方法,一个是本地调H5方法,在此记录一下. 首先,启用JS支持 //启用js支持 webSettings.setJavaScriptEnabl ...
- Android中WebView加载sdcard中的html时提示:ERR_FILE_NOT_FOUND和ERR_ACCESS_DENIED
场景 Android中WebView加载sdcard中的html显示: Android中WebView加载sdcard中的html显示_BADAO_LIUMANG_QIZHI的博客-CSDN博客 在实 ...
- Android中WebView加载本地Html,与JavaScript与Android方法相互传值(续)...
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u010046908/article/details/51809558 接着上篇Android中Web ...
- android封装全局调用的toast_【Android】Android中WebView实现Java与JS交互
现在混合式开发是大趋势,H5不断蚕食移动互联网的份额,有的公司甚至只用H5就搞了一个APP,我们搞Android的不说会点H5,至少要懂怎么和H5(和JavaScript)交互,费话不多说. 一.先看 ...
- android 和h5交互,Android中与H5的交互
Android日常开发中,常常会遇到加载H5页面的情况,于是少不了与H5页面的交互问题.具体表现在Android调用H5代码及H5中调用Android代码两种情况. 测试页面 test.png 这里我 ...
- Android之webview与js交互
对于android初学者应该都了解webView这个组件.之前我也是对其进行了一些简单的了解,但是在一个项目中不得不用webview的时候,发现了webview的强大之处,今天就分享一下使用webvi ...
- android webview 监听js,Android webview与js的数据交互
项目要用到Webview和js交互,查了查以前的项目感觉还是有必要整理下的. 简单描述下项目中用到的地方,比如说在web页需要用到登录的地方点击登录跳转到APP原生登录界面去登录,点击web页的拨打电 ...
- js获取android数据,Android webview与js的数据交互
项目要用到Webview和js交互,查了查以前的项目感觉还是有必要整理下的. 简单描述下项目中用到的地方,比如说在web页需要用到登录的地方点击登录跳转到APP原生登录界面去登录,点击web页的拨打电 ...
最新文章
- 温泉关一役历史资料(电影:斯巴达300勇士)
- linux cat 命令详解
- java程序运行堆栈分析
- Oracle 的基本特点,并完整描述安装过程
- USACO 3.2 Stringsobits
- 安卓USB开发教程 四 安卓 AOA
- 计算机网络之数据链路层:18、数据链路层设备
- 关于Google Video
- log4j日志配置方法
- 逆向工程核心原理笔记
- c3p0数据库连接池使用步骤c3p0配置报错处理
- SIM868调试日志
- 新手网管的升级之路 一
- 华为MA5600配置radius认证登陆
- 在使用计算机结束时,计算机使用完毕后应将显示器的电源关闭对吗?
- booting过程介绍
- 布局 flex让元素一个靠左一个靠右
- 1+1为什么等于2(哥德巴赫猜想)
- 如何配置重做日志高速缓存的大小
- oracle会计 英文,求助,关于cost management 的英文资料+翻译