flutter 缓存网页中的 webview 是否会发生?

hoa*_*uyy 5 flutter flutter-web

我想缓存我在 flutter webview 中显示的网页,以便提高我的性能,无需重新加载页面。那可用吗?我可以实施吗?

chu*_*han 7

flutter_inappwebview(原 flutter_inappbrowser)
有参数cacheEnabled。默认值为 true。
cacheEnabled设置WebView是否应该使用浏览器缓存

flutter_webview_plugin 社区版
有参数appCacheEnabled启用缓存

WebviewScaffold(
    key: _scaffoldKey,
    url: widget.url,
    clearCache: true,
    appCacheEnabled: true,      
);
Run Code Online (Sandbox Code Playgroud)

webview_flutter 正式版
不提供参数,可以查看 Android 源码 https://github.com/flutter/plugins/blob/master/packages/webview_flutter/android/src/main/java/io/flutter/plugins/webviewflutter /FlutterWebView.java

默认缓存模式取决于 iOS WKWebViewhttps://developer.android.com/reference/android/webkit/WebSettings#LOAD_DEFAULT默认缓存使用模式 。如果导航类型没有强加任何特定行为,则在缓存资源可用且未过期时使用缓存资源,否则从网络加载资源。Android WebView
Android WebViewLOAD_DEFAULT