flutter - 颤动缓存网页中的webview吗?
问题描述
我想缓存我在flutter webview中显示的网页,以提高我的性能,无需重新加载页面。可以吗?我可以实施吗?
解决方案
flutter_inappwebview(former flutter_inappbrowser)
有参数cacheEnabled
,默认为 ture
cacheEnabled
:设置 WebView 是否应该使用浏览器缓存。默认值是true
flutter_webview_plugin 社区版
有参数appCacheEnabled
开启缓存
WebviewScaffold(
key: _scaffoldKey,
url: widget.url,
clearCache: true,
appCacheEnabled: true,
);
webview_flutter 官方版
不提供参数,可以查看Android源码
https://github.com/flutter/plugins/blob/master/packages/webview_flutter/android/src/main/java/io/flutter/plugins/webviewflutter /FlutterWebView.java
默认缓存模式取决于 默认缓存模式iOS WKWebView
,Android
WebView
默认缓存模式Android WebView
为LOAD_DEFAULT
https://developer.android.com/reference/android/webkit/WebSettings#LOAD_DEFAULT
默认缓存使用模式。如果导航类型不强制执行任何特定行为,则在可用且未过期时使用缓存资源,否则从网络加载资源
推荐阅读
- python - 在望远镜框架中检测卫星
- javascript - React 在重新渲染父组件时如何重用子组件/保持子组件的状态?
- python - 如何将 gzip 压缩的 json 行文件读入 PySpark 数据帧?
- c++ - 使用来自测试用例的 const 引用参数对内联函数的未定义引用
- file - 使用文件选择器时构建失败,但是当我使用小于 2.0.0 的 file_picker 版本时它可以工作
- ffmpeg - ffmpeg 导出无颜色丢失
- android - 使用约束布局设置百分比值
- python - PyQt5 - fromIccProfile:最小标签大小健全性错误失败
- c - 在 C 中声明指向结构的指针数组,但在需要之前不为结构分配内存
- android - Flutter - 多次调用 API 并使用从互联网返回的更改更新 UI