作家
登录

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

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

  • settings.setDatabaseEnabled(true); final String dbPath = context.getApplicationContext().getDir("db", Context.MODE_PRIVATE).getPath(); 
  • settings.setDatabasePath(dbPath); //开启 Application Caches 功能 便利构建离线APP 不推荐应用 
  • settings.setAppCacheEnabled(true); final String cachePath = context.getApplicationContext().getDir("cache", Context.MODE_PRIVATE).getPath(); 
  • settings.setAppCachePath(cachePath); 
  • settings.setAppCacheMaxSize(5 * 1024 * 1024);  
  • Webview中可以设置的几种缓存比较:

    WebviewClient

    WebCromeClient常用办法:

    1、shouldOverrideUrlLoading(WebView view, String url)

    在API 24今后过时,当一个url即将被webview加载时,给Application一个机会来接收处理这个url,办法返回true代表Application本身处理url;返回false代表Webview处理url。

    举个例子,项目中须要处理传过来的URL是一个事宜照样一个HTTP链接,可以经由过程自定义协定头 (nativeapi://) 来过滤,如:

    1. @Override 
    2.  public boolean shouldOverrideUrlLoading(WebView view, String url) { 
    3.      Uri uri = Uri.parse(url); 
    4.      String scheme = uri.getScheme();      
    5.             if (TextUtils.isEmpty(scheme)) return true;      
    6.             if (scheme.equals("nativeapi")) {          
    7.             //如定义nativeapi://showImg是用来查看大年夜图,这里添加查看大年夜图逻辑 
    8.          return true
    9.      } else if (scheme.equals("http") || scheme.equals("https")) {          
    10.             //处理http协定 
    11.          if (Uri.parse(url).getHost().equals("www.example.com")) {             
    12.             // 内部网址,不拦截,用本身的webview加载 
    13.              return false
    14.          } else {              
    15.                 //跳转外部浏览器 
    16.              Intent intent = new Intent(Intent.ACTION_VIEW, uri); 
    17.              context.startActivity(intent);              

        推荐阅读

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

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


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

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

    关键词: 探索发现

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

    网友点评
    自媒体专栏

    评论

    热度

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