专栏名称: Carson_Ho
走在产品路上的Android研究生
目录
相关文章推荐
开发者全社区  ·  大S的5亿遗产如何分配? ·  8 小时前  
鸿洋  ·  Android WebView ... ·  昨天  
开发者全社区  ·  陆家嘴某基金老登被曝光 ·  2 天前  
开发者全社区  ·  辅导员投稿:和我的学生越界了 ·  3 天前  
开发者全社区  ·  大专生的PDF ·  3 天前  
51好读  ›  专栏  ›  Carson_Ho

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

Carson_Ho  · 掘金  · android  · 2018-04-19 01:11

正文

前言

  • 现在很多 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 页面交互的需求十分常见
  • Android JS 通过WebView互相调用方法,实际上是: Android 去调用 JS 的代码 + JS 去调用 Android 的代码

    二者沟通的桥梁是 WebView


示意图

5. 使用漏洞

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

6. 缓存机制构建

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

示意图

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







请到「今天看啥」查看全文