Android WebView:这是一份全面 & 详细的WebView学习指南

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/carson_ho/article/details/79999529

前言

  • 现在很多App里都内置了Web网页(Hybrid App),比如说很多电商平台,淘宝、京东、聚划算等等,如下图
    京东首页

  • 那么这种该如何实现呢?其实这是Android里一个叫WebView组件实现

  • 今天,我将献上一份全面 & 详细的 WebView攻略,含具体介绍、使用教程、与前端JS交互、缓存机制构建等等,希望您们会喜欢。


目录

示意图


1. 简介

一个基于webkit引擎、展现web页面的控件

a. Android 4.4前:Android Webview在低版本 & 高版本采用了不同的webkit版本的内核
b. Android 4.4后:直接使用了Chrome内核


2. 作用

  • Android 客户端上加载h5页面
  • 在本地 与 h5页面实现交互 & 调用
  • 其他:对 url 请求、页面加载、渲染、对话框 进行额外处理。

3. 具体使用

  • Webview的使用主要包括:Webview类 及其 工具类(WebSettings类、WebViewClient类、WebChromeClient类)

示意图


4. WebView与 JS 的交互方式

  • Android WebView的使用中,与前端h5页面交互的需求十分常见
  • AndroidJS 通过WebView互相调用方法,实际上是:Android 去调用JS的代码 + JS去调用Android的代码

二者沟通的桥梁是WebView

示意图


5. 使用漏洞

  • WebView 使用过程中存在许多漏洞,容易造成用户数据泄露等等危险,而很多人往往会忽视这个问题
  • WebView中,主要漏洞有3类:任意代码执行漏洞、密码明文存储漏洞、域控制不严格漏洞
  • 漏洞具体介绍 & 修复方式请看文章: Android:你不知道的 WebView 使用漏洞

6. 缓存机制构建

  • Android WebView由于前端h5本身的原因,存在加载效率慢 & 流量耗费的性能问题,具体介绍如下:

示意图

至此,关于Android WebView的所有知识讲解完毕。


7. 总结


请帮顶 / 评论点赞!因为你们的赞同/鼓励是我写作的最大动力!

展开阅读全文

没有更多推荐了,返回首页