作家
登录

Android Webview使用和遇到过的坑总结

作者: 来源: 2017-07-14 10:32:25 阅读 我要评论

); 
  •            } 
  •        }        this.loadUrl("javascript:" + JsName + "('" + TotalParam + "')"); 
  •    }    /** 
  •     * 加载不带参数的JS函数 
  •     * 
  •     * @param JsName JS函数名 
  •     */ 
  •    public void loadJS(String JsName) {         
  •         this.loadUrl("javascript:" + JsName + "()"); 
  •    }  
  • Webview的一些优化和碰到的坑

    1. @Override 
    2.     protected void onPause() { 
    3.        h5_webview.onPause(); 
    4.        h5_webview.pauseTimers();        
    5.           super.onPause(); 
    6.     } @Override 
    7.     protected void onResume() { 
    8.        h5_webview.onResume(); 
    9.        h5_webview.resumeTimers();        
    10.           super.onResume(); 
    11.     }  

    Webview的onPause()办法官网是这么解释的:

    Does a best-effort attempt to pause any processing that can be paused safely, such as animations and geolocation. Note that this call does not pause JavaScript. To pause JavaScript globally, use pauseTimers(). To resume WebView, call>

  • if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {  
  • webSetting.setMixedContentMode(webSetting.getMixedContentMode()); 
  •  }  
  • 原因是5.0之后不支撑Https和Http的混淆模式,具体可参看:Android5.0 WebView中Http和Https混淆问题

    3、WebView与JavaScript互相调用时,如不雅是debug没有设备混淆时,调用时没问题的,然则当设置混淆后发明无法正常调用了,解决办法:

    在proguard-rules.pro文件中设备:

    1. -keepattributes *Annotation*   
    2. -keepattributes *JavascriptInterface* 
    3. -keep public class org.mq.study.webview.DemoJavaScriptInterface{     
    4.     public <methods>; 
    5.  

    如不雅是内部类:  

    1. -keepattributes *Annotation* 
    2. -keepattributes *JavascriptInterface* 
    3. -keep public class org.mq.study.webview.webview.DemoJavaScriptInterface$InnerClass{     
    4.     public <methods>; 
    5.  

    【编辑推荐】

    1. Android Study之findViewById蹦歉霎路
    2. Android软键盘控制办法、以及开辟中碰到的一些问题。
    3. 总结Android模块化的一些常识点。

        推荐阅读

        卢清君:“互联网+”变革医疗发展 两岸远程医疗合作频繁

      【技巧沙龙】AI开辟者拭魅战营-7分钟打造1个定制技能。7月22号,我们等你一路! 国度卫计委长途医疗治理与培训中间办公室主任卢清君(中国台湾网 尹赛楠 摄)2017年(第九届>>>详细阅读


      本文标题:Android Webview使用和遇到过的坑总结

      地址:http://www.17bianji.com/lsqh/36219.html

    关键词: 探索发现

    乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

    网友点评
    自媒体专栏

    评论

    热度

    精彩导读
    栏目ID=71的表不存在(操作类型=0)