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自己写一套监听就绝对是行不通的?但是有现成的方法不用,我没必要这么拼,太傻太傻。

  • 相关阅读:
    「Codeforces 79D」Password
    「算法笔记」BSGS
    「Codeforces 468C」Hack it!
    「算法笔记」快速傅里叶变换(FFT)
    「算法笔记」2-SAT 问题
    「算法笔记」基础数论 2
    《算法笔记》二分—木棒切割问题&求凸多边形外接圆最大半径
    《算法笔记》区间贪心
    《算法笔记》PAT B1020 月饼、PAT B1023 组个最小数
    《算法笔记》n皇后问题
  • 原文地址:https://www.cnblogs.com/ooj88s/p/5648536.html
Copyright © 2011-2022 走看看