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方法一样,进行调用就可以。

b.c

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页面中,利用如下代码

b.c

,即可实现调用

注意:在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之间的交互及注意事项相关推荐

  1. Android中WebView与JS的交互

    转载请注明:http://blog.csdn.net/feather_wch/article/details/79364349 介绍Android中通过WebView与web页面交互的知识点. 分为三 ...

  2. android webview调js方法,Android中WebView与H5的交互,Native与JS方法互调

    项目中经常用到WebView与H5的交互,一个是H5调本地方法,一个是本地调H5方法,在此记录一下. 首先,启用JS支持 //启用js支持 webSettings.setJavaScriptEnabl ...

  3. Android中WebView加载sdcard中的html时提示:ERR_FILE_NOT_FOUND和ERR_ACCESS_DENIED

    场景 Android中WebView加载sdcard中的html显示: Android中WebView加载sdcard中的html显示_BADAO_LIUMANG_QIZHI的博客-CSDN博客 在实 ...

  4. Android中WebView加载本地Html,与JavaScript与Android方法相互传值(续)...

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u010046908/article/details/51809558 接着上篇Android中Web ...

  5. android封装全局调用的toast_【Android】Android中WebView实现Java与JS交互

    现在混合式开发是大趋势,H5不断蚕食移动互联网的份额,有的公司甚至只用H5就搞了一个APP,我们搞Android的不说会点H5,至少要懂怎么和H5(和JavaScript)交互,费话不多说. 一.先看 ...

  6. android 和h5交互,Android中与H5的交互

    Android日常开发中,常常会遇到加载H5页面的情况,于是少不了与H5页面的交互问题.具体表现在Android调用H5代码及H5中调用Android代码两种情况. 测试页面 test.png 这里我 ...

  7. Android之webview与js交互

    对于android初学者应该都了解webView这个组件.之前我也是对其进行了一些简单的了解,但是在一个项目中不得不用webview的时候,发现了webview的强大之处,今天就分享一下使用webvi ...

  8. android webview 监听js,Android webview与js的数据交互

    项目要用到Webview和js交互,查了查以前的项目感觉还是有必要整理下的. 简单描述下项目中用到的地方,比如说在web页需要用到登录的地方点击登录跳转到APP原生登录界面去登录,点击web页的拨打电 ...

  9. js获取android数据,Android webview与js的数据交互

    项目要用到Webview和js交互,查了查以前的项目感觉还是有必要整理下的. 简单描述下项目中用到的地方,比如说在web页需要用到登录的地方点击登录跳转到APP原生登录界面去登录,点击web页的拨打电 ...

最新文章

  1. 温泉关一役历史资料(电影:斯巴达300勇士)
  2. linux cat 命令详解
  3. java程序运行堆栈分析
  4. Oracle 的基本特点,并完整描述安装过程
  5. USACO 3.2 Stringsobits
  6. 安卓USB开发教程 四 安卓 AOA
  7. 计算机网络之数据链路层:18、数据链路层设备
  8. 关于Google Video
  9. log4j日志配置方法
  10. 逆向工程核心原理笔记
  11. c3p0数据库连接池使用步骤c3p0配置报错处理
  12. SIM868调试日志
  13. 新手网管的升级之路 一
  14. 华为MA5600配置radius认证登陆
  15. 在使用计算机结束时,计算机使用完毕后应将显示器的电源关闭对吗?
  16. booting过程介绍
  17. 布局 flex让元素一个靠左一个靠右
  18. 1+1为什么等于2(哥德巴赫猜想)
  19. 如何配置重做日志高速缓存的大小
  20. oracle会计 英文,求助,关于cost management 的英文资料+翻译

热门文章

  1. Android颜色选择器库
  2. Windows Server 2008 多元密码策略配置
  3. 解决Oracle11g密码180天过期,账号锁住的问题
  4. 【原】NIO通信模型和BIO通信模型
  5. javascript中事件
  6. 前端基础知识(持续更新中)
  7. Java如何获得系统时间
  8. 分页加载PullToRefreshLayout+PullableListView
  9. switch语句小练习
  10. [摘录]第2章 中场谈判技巧