`
zhelong111
  • 浏览: 188596 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Android中javascript和java互相调用

 
阅读更多
http://www.jb51.net/article/59951.htm

mWebview = (WebView) findViewById(R.id.web_view);
		mWebview.getSettings().setJavaScriptEnabled(true);
		mWebview.getSettings().setDefaultTextEncodingName("UTF-8");	
		mWebview.setWebChromeClient(new WebChromeClient() {});
		mWebview.setWebViewClient(new WebViewClient() {
			@Override
			public void onPageFinished(WebView view, String url) {
				super.onPageFinished(view, url);

				String json = "[{\"name\":\"zxx\", \"amount\":\"9999999\", \"phone\":\"18600012345\"}]";
	            mWebview.loadUrl("javascript:show('" + json + "')");
			}
		}); 
		mWebview.addJavascriptInterface(new WebActor(ActivitiesActivity.this), "contact");
		
		mWebview.loadUrl("file:///android_asset/index.html");


public class WebActor {
	private Activity context;
	public WebActor(Activity context) {
		this.context = context;
	}
	
	@JavascriptInterface
    public void call(String phone) {
//        startActivity(new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + phone)));
		context.runOnUiThread(new Runnable() {
			
			@Override
			public void run() {
				// TODO Auto-generated method stub
				PromptManager.showToast(context, "拨打电话1212");
			}
		}); 
    } 
}


<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Insert title here</title>
        <script type="text/javascript">
            function show(jsondata){            
                    var jsonobjs = eval(jsondata);
                    var table = document.getElementById("personTable");
                    for(var y=0; y<jsonobjs.length; y++){
                        var tr = table.insertRow(table.rows.length); 
                        var td1 = tr.insertCell(0);
                        var td2 = tr.insertCell(1);
                        td2.align = "center";
                        var td3 = tr.insertCell(2);
                        td3.align = "center";
                        td1.innerHTML = jsonobjs[y].name; 
                        td2.innerHTML = jsonobjs[y].amount; 
                        td3.innerHTML = "<a href='javascript:contact.call(\""+ jsonobjs[y].phone+ "\")'>"+ jsonobjs[y].phone+ "</a>"; 
                    }
            }
        </script>
    </head>
    <body onload="javascript:contact.showcontacts()">
       <table border="0" width="100%" id="personTable" cellspacing="0">
            <tr>
                <td width="30%">姓名</td>
                <td width="30%" align="center">存款</td>
                <td align="center">电话</td>
            </tr>
        </table>
    </body>
</html>
分享到:
评论

相关推荐

    Android中JS与Java相互调用Demo

    2. **Java调用JavaScript**: Android的`WebView`提供了`loadUrl()`方法,可以用来执行JavaScript代码。例如,如果你想执行一段JavaScript代码,可以这样做: ```java webView.loadUrl("javascript:console.log...

    android中实现JavaScript与Java之间实现互相调用

    在Android开发中,有时我们需要在Java代码和JavaScript之间进行交互,比如从JavaScript中触发Android原生功能,或者从Android端向网页注入数据。这个过程通常涉及到Android的WebView组件和JavaScript接口的实现。...

    android和javascript互相调用

    本示例将深入探讨如何实现Android和JavaScript的互相调用,以便于在混合应用开发中创建更加丰富的用户体验。 Android调用JavaScript: 在Android应用中,我们通常使用WebView来加载网页内容。通过WebView提供的`...

    Android和JavaScript互相调用

    总结,Android和JavaScript的互相调用为开发者提供了更丰富的可能性,使我们可以构建出功能强大的混合应用。然而,需要注意的是,这种交互方式也带来了一些安全问题,比如XSS攻击,因此在实际开发中需要谨慎处理数据...

    android webview中使用Java调用JavaScript方法并获取返回值

    如果需要在WebView中启用JavaScript调用Android代码的功能,还要在addJavascriptInterface()方法中声明一个Java类的实例,并为其指定一个可以在JavaScript中访问的接口名字。 在Java代码中定义一个内部类,用于接收...

    Android javascript 调用本地Java函数

    在Android开发中,JavaScript与本地Java代码的交互是...总的来说,Android JavaScript调用本地Java函数是Android混合开发中的重要技术,通过合理的接口设计和性能优化,可以构建出既有原生体验又有Web灵活性的应用。

    android中Webview与javascript的交互(互相调用)

    总之,Android中的WebView与JavaScript的交互是通过暴露Java对象和调用JavaScript函数实现的,这种方式极大地丰富了Android应用的功能。在实际开发中,我们需要合理利用这一特性,同时注意安全性和性能优化。

    android JS与java代码相互调用

    1. **Java调用JavaScript** 当Java代码需要执行JavaScript时,可以使用`WebView`的`loadUrl()`或`evaluateJavascript()`方法。`loadUrl()`通常用于加载整个网页或者执行一段JS代码,例如: ```java webView....

    android使用webView实现java程序与js脚本的相互调用

    Java调用JavaScript 使用`addJavascriptInterface()`方法暴露一个Java对象给JavaScript环境,这样JavaScript就可以调用这个对象的方法: ```java webView.addJavascriptInterface(new Object() { @...

    Android 和 IOS WebView javaScript与 Native 互相调用(JS 与O-C Java )

    本文将深入探讨如何在Android和iOS中实现JavaScript与原生代码的互相调用。 **一、Android中的JavaScript与Java互相调用** 1. **JavaScript调用Java:** 在Android中,我们可以使用`WebView`的`...

    Android原生java语句 和html js互相调用 传递参数

    这样,当Android调用`callJsFunction`时,JavaScript会传递一个消息给Java,Java处理后返回结果,再将结果显示回页面。 总结来说,Android与HTML JavaScript的互调主要依赖`WebView`的`addJavascriptInterface`和`...

    android、js互相调用

    在Android开发中,Android与JavaScript的互相调用是一种常见的需求,尤其在混合应用开发中更为常见。这种交互机制使得开发者可以充分利用Web技术的便捷性,同时利用原生Android的性能和功能。以下将详细介绍Android...

    android中js与java间函数相互调用demo,支持中文传参,无乱码

    5. **Java调用JavaScript函数** 通过`WebView`的`loadUrl()`方法,我们可以执行JavaScript代码,从而调用JavaScript函数。例如: ```java webView.loadUrl("javascript:androidBridge.receiveFromJava('这是来自...

    Android调用JavaScript.zip

    "Android调用JavaScript.zip"这个压缩包可能包含了关于如何在Android中调用JavaScript代码的相关示例和资源。下面我们将深入探讨这一主题。 1. **WebView组件** Android中的WebView是一个可以加载和显示网页的控件...

    android 案例java 调用js

    1. **Java调用JavaScript**: - `loadUrl`: 使用WebView的`loadUrl`方法可以加载网页URL或执行JavaScript代码。例如,要执行一段JavaScript代码,我们可以这样做: ```java webView.loadUrl("javascript:...

    UE和Android互相调用

    总结,UE和Android互相调用涉及到多个层次的技术,包括UE的Android平台支持、Java与C++的交互、JNI编程、自定义UI设计、Blueprint逻辑以及性能优化。理解并熟练掌握这些知识点,将有助于在Android设备上创建引人入胜...

    Android调用JavaScript_android源码.zip

    2. `Chromium`: 在Chromium中,`AndroidBridge`类处理来自Java的JavaScript接口调用,将它们转发给JavaScript引擎。当JavaScript调用Java方法时,`Chromium`会生成一个JNI函数调用,再由Java层的反射机制执行相应的...

    xe7android手机调用javascript

    在Android开发中,将Java代码与JavaScript交互是常见的需求,特别是在构建混合应用或者利用Webview展示网页内容时。本文将详细讲解如何在Android设备上实现Java代码调用JavaScript,以及JavaScript反过来调用Android...

    android和js相互调用

    而在Android到JavaScript的调用中,参数可以直接作为`loadUrl()`方法的字符串参数。 为了处理更复杂的数据结构,可以考虑JSON格式。例如,JavaScript可以序列化为JSON对象并传递给Android,Android再进行反序列化。...

Global site tag (gtag.js) - Google Analytics