为啥多个 WebView 不能共享缓存?
Posted
技术标签:
【中文标题】为啥多个 WebView 不能共享缓存?【英文标题】:Why multiple WebView can't share the cache?为什么多个 WebView 不能共享缓存? 【发布时间】:2020-11-20 03:25:20 【问题描述】:我有一个使用 react-native 开发的应用程序。使用了 react-native-webview 和 react-navigation 插件。
当我打开一个包含 webview 的界面,然后跳转到另一个包含 webview 的界面时,我发现他们无法共享缓存。上一页引用的静态文件在下一页再次加载。
但是如果我在同一个webview中重定向网页的url,缓存会起作用,一切正常。
react-native-webview使用默认配置,静态文件请求的cache-control正常。
不知道android下的webview性能是这样的,还是另有问题?
<WebView
ref=this.webview
source=uri: url
mixedContentMode="compatibility"
useWebKit=true
allowsInlineMediaPlayback=true
allowsFullscreenVideo=true
onNavigationStateChange=this._onNavigationStateChange
onLoadStart=this._onLoadStart
onLoadEnd=this._onLoadEnd
onMessage=this.invoke.listener
/>
【问题讨论】:
【参考方案1】:设置sharedCookiesEnabled=true
【讨论】:
以上是关于为啥多个 WebView 不能共享缓存?的主要内容,如果未能解决你的问题,请参考以下文章
为啥 Youtube 视频没有在 webview android 中播放
javascript 提供用于从React-Native WebView发送和接收消息的示例实现(使用postMessage / onMessage WebVie)