Android与Html5互掉

来源:互联网 发布:在淘宝网上购物的步骤 编辑:程序博客网 时间:2024/06/06 03:43

1.WebView

WebView webView = (WebView) findViewById(R.id.webview);        //设置支持javaScript脚步语言        webSettings.setJavaScriptEnabled(true);        //支持双击-前提是页面要支持才显示      // webSettings.setUseWideViewPort(true);        //支持缩放按钮-前提是页面要支持才显示        webSettings.setBuiltInZoomControls(true);        //设置客户端-不跳转到默认浏览器中        webView.setWebViewClient(new WebViewClient());        //设置支持js调用java        webView.addJavascriptInterface(new AndroidAndJSInterface(), "Android");        //加载本地资源//        webView.loadUrl("http://atguigu.com/teacher.shtml");        webView.loadUrl("file:///android_asset/JsCallJavaCallPhone.html");

2.Js接口

class AndroidAndJSInterface {        /**         * 该方法将被js调用,用于加载数据         */        @JavascriptInterface        public void showcontacts() {            // 下面的代码建议在子线程中调用            String json = "[{\"name\":\"阿福\", \"phone\":\"18600012345\"}]";            // 调用JS中的方法            webView.loadUrl("javascript:show('" + json + "')");        }        /**         * 拨打电话         * @param phone         */        @JavascriptInterface        public void call(String phone) {            Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + phone));            if (ActivityCompat.checkSelfPermission(JsCallJavaCallPhoneActivity.this, Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) {                return;            }            startActivity(intent);        }    }
原创粉丝点击