Android中的Java与JavaScript方法互调
来源:互联网 发布:乐天软件 编辑:程序博客网 时间:2024/05/22 16:52
在Android开发中常常用到WebView,就会涉及到安卓的java代码和网页中的javaScript方法的相互调用.
准备工作
最基本的要得到WebView对象
@Bind(R.id.webview) WebView webview; WebView webview= (WebView) findViewById(R.id.webview);
两种方法
- 使用ButterKnife插件 注解
- 普通findViewById
设置默认的文本编码方式为utf-8
webview.getSettings().setDefaultTextEncodingName("utf-8");
允许执行js代码
webview.getSettings().setJavaScriptEnabled(true);
Java代码去调用JavaScript中的方法
网页中的JavaScript代码
<script type="text/javascript"> function changeInputValue(content){ document.getElementById("put_id").value=content; }</script>
比如我们想在java代码去调用网页中changeInputValue这个方法
webview.loadUrl("javascript:changeInputValue('我是参数')");
webView调用loadUrl方法,值是一个字符串写法: javascript: + JavaScript中的方法名('参数');
HTML(网页)代码去调用Java中的方法
java中代码:
webview.addJavascriptInterface(new JavaScriptInterface(),"AndroidMethod");class JavaScriptInterface{ @JavascriptInterface public void showToast(String content){ Toast.makeText(getApplicationContext(), content, Toast.LENGTH_SHORT).show(); } }
使用webview调用addJavascriptInterface方法,给网页一个方法"接口"类 两个参数 1."接口"类 对象 直接new出来 2. 起个名字给JavaScript调用使用写一个方法"接口"类在类中写方法 低版本在方法上不用写注解就可以 高版本一定要写上注解,不然无法调用
JavaScript 中代码
<script type="text/javascript"> function showAndroidMethod(content) { AndroidMethod.showToast(content); }</script>
在JavaScript写一个方法 方法中直接刚才在java代码中定义的名字 调用"接口"类中的方法
0 0
- Android中的Java与JavaScript方法互调
- javascript replace 方法与java中的replace方法
- Java中的JavaScript处理方法
- Android java 与 javascript互访(相互调用)的方法例子
- Android webview中JavaScript与Java方法的相互调用
- JavaScript中的Boolean 方法与Number方法
- andorid中c++与java中的方法互调
- andorid中c++与java中的方法互调
- Android JavaScript调用Java 方法
- JavaScript中的 apply 与 call 方法
- JavaScript中的 apply 与 call 方法
- JavaScript中的valueOf与toString方法
- Javascript中的apply与call方法
- javascript中的Object.defineProperty()与getOwnPropertyNames ()方法
- WebView 中的 JavaScript 调用 Android 的方法
- 使用WebView中的JavaScript调用Android方法
- android系统中的js与java之间的互调
- JavaScript与后台方法互调
- C语言 字符数组与字符指针比较
- 区块链开发的环境搭建
- Popwindow的使用
- 推荐的c/c++开源库
- 《现代操作系统》读书笔记——第二章 进程与线程
- Android中的Java与JavaScript方法互调
- 构造函数中,成员变量一定要通过初始化列表来初始化的几种情况
- echarts框架创建各种图表
- Linux - 常用命令(长期更新)
- 链表的简单介绍
- HihoCoder 1249(2015 Asia Beijing Regional Contest)
- chrome插件开发之:关于Chrome插件的架构的理解
- shell脚本
- p3p协议是什么