作家
登录

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

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

【技巧沙龙】AI开辟者拭魅战营-7分钟打造1个定制技能。7月22号,我们等你一路!


正文

WebView 用来显示网页的一个View,它应用WebKit衬着引擎显示web页面,可以加载在线的或者本地的html页面,WebView可以对页面进行一系列操作,如汗青页面的向前、向后,放大年夜和缩小,履行文本搜刮,与JS交互等等;

在应用Webview时,请记得在AndroidManifest.xml文件中声明INTERNET权限:

  1. <uses-permission android:name="android.permission.INTERNET" /> 

默认情况下,WebView不支撑JavaScript,web页面的缺点也会被忽视,如不雅只是用Webview来显示网页而不消交互,默认设备就可以了,如不雅须要交互,就须要自定义设备了。

WebView初始化及加载URL

  1. <WebView  
  2.     android:id="@+id/webview" 
  3.     android:layout_width="fill_parent" 
  4.     android:layout_height="fill_parent"/>  

或者直接New:

  1. WebView webview = new WebView(this); 

2、加载URL:

1、Webview打开一个链接,播放一段音乐,退出Activity时音乐还在后台播放,可以经由过程在Activity的onPause中调用webview.onPause()解决,并在Activity的onResume中调用webview.onResume()恢复,如下:

或者可以直接加载Html:

  1. String summary = "<html><body>You scored <b>192</b> points.</body></html>"
  2.  
  3. myWebView.loadData(summary, "text/html"null);  

如不雅在加载URL的时刻想添加Header信息,可以复写loadUrl()办法,如:

  1. @Override public void loadUrl(String url) { 
  2.      Map<String, String> map = new HashMap<String, String>();      
  3.        map.put("ajax""true");      
  4.        map.put("appversion", SharedPreferencesUtil.getAppVersion(getContext()));     map.put("clientid", SharedPreferencesUtil.getClientId(getContext())); 
  5.      loadUrl(url, map); 
  6.  }  

WebSettings

WebSettings 中可以对WebView进行一系列设备,如:

  1. WebSettings settings = getSettings(); //默认是false 设置true许可和js交互 
  2. settings.setJavaScriptEnabled(true); //  WebSettings.LOAD_DEFAULT 如不雅本地缓存可用且没有过时则应用本地缓存,否加载收集数据 默认值 
  3. //  WebSettings.LOAD_CACHE_ELSE_NETWORK 优先加载本地缓存数据,无论缓存是否过时 
  4. //  WebSettings.LOAD_NO_CACHE  只加载收集数据,不加载本地缓存 
  5. //  WebSettings.LOAD_CACHE_ONLY 只加载缓存数据,不加载收集数据 
  6. //Tips:有收集可以应用LOAD_DEFAULT 没有网时用LOAD_CACHE_ELSE_NETWORK 
  7. settings.setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK); //开启 DOM storage API 功能 较大年夜存储空间,应用简单 
  8. settings.setDomStorageEnabled(true); //设置数据库缓存路径 存储治理复杂数据 便利对数据进行增长、删除、修改、萌芽 不推荐应用 
     1/6    1 2 3 4 5 6 下一页 尾页

      推荐阅读

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

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


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

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

关键词: 探索发现

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

网友点评
自媒体专栏

评论

热度

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