android加载WebView

本文介绍如何在Android应用中使用WebView加载并执行JavaScript代码,并实现JavaScript与Android本地代码之间的交互。主要内容包括:通过子线程请求网络数据并在主线程加载到WebView;设置WebView属性支持JavaScript执行及双击缩放;实现JavaScript调用Android本地方法。

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

 // android j加载js

//子线程请求网络,,,,主线程再加载
       new  Thread(){
           @Override
           public void run() {
               //获取加载的webView网址的自定义方法
               webUrl = getWebUrl(sUrl);
               runOnUiThread(new Runnable() {
                   @Override
                   public void run() {
                       webview.loadUrl(webUrl);
                   }
               });
           }
       }.start();

        //设置WebView属性,能够执行Javascript脚本
        webview.getSettings().setJavaScriptEnabled(true);

        //webSettings对webView进行一些加载url设置
        WebSettings webSettings = webview.getSettings();
        webSettings.setUseWideViewPort(true);//支持双击放大
        webview.loadUrl(sUrl);
        webview.setWebViewClient(new WebViewClient(){
            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                //加载需要显示的网页
                view.loadUrl(url);
                return false;
            }
        });
// js 调用android 本地方法
//参数一:实现接口类的对象,接口名称任意定义
//参数二:接口的别名,别名需要和html中编写调用方法的类的名称一致

/*<!-- Js调用Android代码 -->*/
/*<button onclick="window.Android.back()">返回</button>*/

public interface JsCallAndroid{
	public void back();
}

webView.addJavascriptInterface(new JsCallAndroid() {
	@Override
	@JavascriptInterface
	public void back() {
		Toast.makeText(NewDetailActivity.this, "js调用了android 结束界面的代码", 0).show();
		finish();
	}
}, "Android");


评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值