zoukankan      html  css  js  c++  java
  • 关于WebView的复习

    最近不知为啥,公司提出要用webView,偷笑不止。在青软上课的时候学过这东西,是说条件比较紧张的时候可以拿来充数的,现在公司里手机端开发人员很多,做的好好的,放着原生ui不用,非要赶时髦搞什么WebView。想不到,想不到,他们居然都不知道怎么传参,哈哈哈。虽然清晰的记得有个大概,但是没谱的话我是不会说的,于是回来或复习或恶补了一下,做些笔记如下。

    webView.getSettings().setJavaScriptEnabled(true);
    webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);

    上面是设置一些webView控件的参数。

    穿参道jsp可以通过url,而返回值要麻烦点,除了上面的,还有:

    webView.setWebChromeClient(new WebChromeClient());
    webView.setWebViewClient(new WebViewClient());

    这时候我们需要先做一个类备用:

    public class QingsoftJS {
        private Context context;
        
        public QingsoftJS(Context context){
            this.context = context;
        }
        
        @JavascriptInterface
        public void showMessage(String mes){
            Toast.makeText(context, mes, Toast.LENGTH_LONG).show();
        }
        
    
    }

    主要是需要做方法的注解。然后通过webView对象的addJavascriptInterface方法,把这个对象绑定到一个js对象上,通过一个String类型的参数指定js对象名称。这样在jsp页面中就可以通过这个js对象调用被注解的方法,而这个方法是可以带参数的,于是我们可以通过这个接口做很多事情。

    不可思议哦,通过js直接执行java代码了都,还要dwr做什么?其实我一开始想起来的不是这样子,好像是安卓有个后台监听什么的,完全想歪了,幸好没有开口不然丢人丢大了。不过方法绝对不是就这一种,谁说用socket自己写一套监听就绝对是行不通的?但是有现成的方法不用,我没必要这么拼,太傻太傻。

  • 相关阅读:
    zoj3888 找第二大
    zoj3882 博弈
    字典树小总结
    hdu2222 字典树
    hdu1247 字典树
    开放融合 | “引擎级”深度对接!POLARDB与SuperMap联合构建首个云原生时空平台
    阿里HBase高可用8年“抗战”回忆录
    最佳实践 | RDS & POLARDB归档到X-Pack Spark计算
    今日头条在消息服务平台和容灾体系建设方面的实践与思考
    饿了么监控系统 EMonitor 与美团点评 CAT 的对比
  • 原文地址:https://www.cnblogs.com/ooj88s/p/5648536.html
Copyright © 2011-2022 走看看