java调用js里面的数据

本文介绍如何在Android应用中利用WebView组件加载HTML页面,并通过添加JavaScript接口实现与JavaScript代码的交互,进而从Java代码调用JavaScript代码来拨打电话。包括设置WebView的JavaScript启用、添加本地接口及调用电话拨打功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 package cn.itcast.web;

public class DemoActivity extends Activity {
	private WebView webView;
	
	
	@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
		//得到webview
        webView = (WebView) this.findViewById(R.id.webview);
        //相当于创建了一个浏览器 

        
        
        
        WebSettings settings = webView.getSettings(); // 得到浏览器的设置
		
		
		//网页是否支持javascript  是否自动下载图片,文本大小   webview  useragent
        settings.setJavaScriptEnabled(true);
		//在网页加这么一句.<p><a onClick="window.demo.callPhone()"  href="">联系我们</a></p>
		//让js里面的代码可以调用android里面的java代码.
		
		//callPhone方法.  window 当前窗体
		//增加一个js的本地接口   名字: demo就是js里面的对象.   Object就是对象.
		给js注册了java代码
        webView.addJavascriptInterface(new Object(){
        	public void callPhone(){
        		System.out.println("callphone");
        		Intent intent = new Intent();
				//action  和data
        		intent.setAction(Intent.ACTION_CALL);
        		intent.setData(Uri.parse("tel:1351234567"));
        		startActivity(intent);
        	}
        	
        }, "demo");
		//得到url
        String  url = getResources().getString(R.string.serverurl);
		//加载url.
        webView.loadUrl(url);
    }
	<head> </head> script  <body> <p>id="content" </p>   </body>
	//<script>
	//funtion  fillContent(){
	//document.getElementById("content").innerHTML="hahhahahahahha";
	//}
	//</script>
	
	//java代码调用javascripe代码
	//按钮的点击事件
	//目的直接可以将数据展现到界面里
	public void calljavascript(View view){
		webView.loadUrl("javascript:fillContent()");
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值