我正在使用Crosswalk在Android上开发一个应用程序,该应用程序显示需要从Web服务下载的文件。我宁愿将文件下载到外部存储。但是,当我尝试将它们加载到Crosswalk WebView中时,出现“不允许加载本地资源:”错误。我尝试直接打开它们,并通过带有这样的csp属性(和一些变体)的json清单打开它们:

"csp" : "default-src 'self' file:// http:// https://"


我当前的设置相当宽松:

   mXWalkView.getSettings().setAllowContentAccess(true);
   mXWalkView.getSettings().setAllowFileAccess(true);
   mXWalkView.getSettings().setDomStorageEnabled(true);
   mXWalkView.getSettings().setAllowFileAccessFromFileURLs(true);
   mXWalkView.getSettings().setAllowUniversalAccessFromFileURLs(true);
   mXWalkView.getSettings().setJavaScriptEnabled(true);


但是仍然没有成功。有任何想法吗?这有可能吗?

更新

为了澄清,以免在评论中迷失方向:
我正在使用以下代码加载文件:

String url = "file:///storage/emulated/0/wh_files/index.html";
mXWalkView.load(url, null);

最佳答案

好的,我终于能够找到问题所在,并且与实现没有任何关系。设备上似乎存在硬件问题,我要加载的文件已损坏。

我猜想要学习的重要课程是“不允许加载本地资源:”错误并不总是表示它的意思。

08-18 16:50