H5 WebView热更新策略

背景介绍

本文介绍了一种嵌入到原生客户端(安卓和IOS)中的H5页面中资源热更新策略。

通常使用WebView技术将H5页面嵌入到原生客户端中,作为二级页面,以此来提高开发效率。但由此带来的一个问题就是:如何向H5页面传递信息。

常见的作法有两种:1. 通过在js全局对象上注入方法的方式;2. 原生打开H5页面的时候通过cookie传递消息。

这两种做法各有利弊:

  • 注入js方法的方式可以携带较大的数据量,但是缺点在于: 1. 注入需要时间;2. 传递的数据量超过限制之后会导致App闪退;
  • 通过cookie的方式克服了注入等待时间的缺点,但是cookie能够携带的数据量比较小,不能作为大量数据传递的途径。

解决方案

笔者在工作实践中采用的方式是:cookie+时间戳的方式;通过cookie不传递信息,而是传递信息是否更新的时间戳;通过和本地保存的时间戳进行对比,可以判断出本地保存的信息是否过期,如果过期,再由H5向后端请求数据。

下面是国际化资源热更新的流程图,从中清晰的体现出资源热更新的策略:

相关推荐
一笑的小酒馆1 小时前
AndroidKMP之瀑布流实现
android
RainyJiang1 小时前
AI时代下,Android的边界正在消失
android·openai·ai编程
Android-Flutter2 小时前
android 内存抖动详解
android
代码的小搬运工3 小时前
KVO学习
学习·ios·cocoa
方白羽3 小时前
为什么 Android 非要用 Intent 传值?
android·ios·harmonyos
dora5 小时前
iOS开发新手的第一行代码
ios
方白羽6 小时前
Android17 重写 MessageQueue,解决 Handler 隐性卡顿
android·app
蜡台6 小时前
Kotlin 零基础完整版实战教程|从语法入门到Android工程实战
android·开发语言·kotlin
律宏阔7 小时前
Android 车载 USB 开发笔记:USB Host、USB 串口、USB-CAN、HID 与系统 API
android
律宏阔7 小时前
Android 车载串口开发笔记:UART、RS232、RS485、串口配置与数据通信
android