Android上的react-native-webview无法加载使用ERR_ACCESS_DENIED保存在缓存目录中的本地文件

问题描述

在我的应用程序中,我将文件下载并保存到应用程序的缓存目录(例如file:///data/user/0/.../cache/5f8f.../downloaded.pdf),然后尝试使用WebView打开该文件。我的WebView代码是:

<WebView
  source={{ uri: file.uri }}
  startInLoadingState
  originWhitelist={['file://']}
  allowUniversalAccessFromFileURLs={true}
  allowFileAccess={true}
/>

在iOS上,它可以正常工作。但是,在Android上,它会打印ERR_ACCESS_DENIED

我已经尝试了一些在GitHub和StackOverflow上找到的解决方案:

,但仍无法解决我的情况。

还有其他解决方案可以解决我的问题吗?提前致谢。如果您需要更多代码进行调查,请告诉我。

==编辑: file.uri看起来像file:///data/user/0/.../cache/5f8f.../downloaded.pdf。它是存储在缓存目录中的文件

解决方法

Android上的Webview无法显示pdf文档。