Android 应用程序开发

Js调用Java函数

利用Webview在程序中显示map框架,当触发map中的事件时调用Jscript代码,并在Js中反过来调用Java的函数,实现简单的互动以及变量传递等功能。

Java部分

Webview 设置

//AndroidtoJS类对象映射到js的test对象
    mWebview.addJavascriptInterface(new JSInterface(), "LogJS");

被调用函数定义

public class JSInterface {
		// 定义JS需要调用的方法
		// 被JS调用的方法必须加入@JavascriptInterface注解
		@JavascriptInterface
		public void call(String s) {
			PrintLog("html", s);
		}
	}

Js部分

调用Java函数示例

LogJS.call("Hello World!");

需要注意的是,当Js调用Java函数需传递参数时,例如传入“153.45687525”,则Java接收到的参数会变成“153.456”。

此时,只需把call函数改为如下即可:

public void call(double s) { 
		PrintLog("html", String.valueOf(s));
	}