Java 访问存储在模拟存储中的文件

Java 访问存储在模拟存储中的文件,java,android,Java,Android,我目前有一个从服务器下载文件的应用程序,默认情况下,它们存储在/storage/emulated/0/下。我把它设置好让他们下载到一个叫做“数据”的文件夹里。这些文件已成功下载并解压缩到/storage/emulated/0/data/unzip,但是,当我尝试将存储在data文件夹下的html文件加载到webview时,我收到一个错误消息,表示找不到该文件。我使用Astro文件管理器仔细检查了html文件的文件路径,并能够验证我的文件路径是否正确。下面是我用来将html文件加载到webview

我目前有一个从服务器下载文件的应用程序,默认情况下,它们存储在/storage/emulated/0/下。我把它设置好让他们下载到一个叫做“数据”的文件夹里。这些文件已成功下载并解压缩到/storage/emulated/0/data/unzip,但是,当我尝试将存储在data文件夹下的html文件加载到webview时,我收到一个错误消息,表示找不到该文件。我使用Astro文件管理器仔细检查了html文件的文件路径,并能够验证我的文件路径是否正确。下面是我用来将html文件加载到webview的语句

wb.loadUrl(Environment.getExternalStorageDirectory()
                + "/data/unzipped/output.html");

我尝试过使用和不使用.html扩展名,但仍然没有成功。有什么想法吗?访问模拟存储是否有限制?

文件路径不是URL。使用
文件://
方案访问文件。

文件路径不是URL。使用
文件://
方案访问文件。

Environment.getExternalStorageDirectory()在我使用log.d(“path”,Environment.getExternalStorageDirectory())记录路径时转换为/mnt/sdcard,它给出了/storage/emulated/0。我们可以从LogCat中看到错误吗?我在LogCat中没有看到错误,除了一个可能与此相关的错误,该错误表示“未找到用于撤销权限的内容提供商:file:///data/local/tmp/Intercept.apk". 网络视图显示网页不可用。位于/storage/emulated/0/data/unzip/output.html的网页可能暂时关闭,或者可能已永久移动到新的网址。您在清单中是否具有读取外部存储权限?环境。当我使用log.d(“path”)记录路径时,getExternalStorageDirectory()转换为/mnt/sdcard,Environment.getExternalStorageDirectory()),它给了我/storage/emulated/0。我们可以从LogCat中看到错误吗?我在LogCat中没有看到错误,除了一个可能相关的错误,该错误表示“未找到用于权限撤销的内容提供程序:file:///data/local/tmp/Intercept.apk". 网络视图显示网页不可用。位于/storage/emulated/0/data/unzip/output.html的网页可能暂时关闭,或者可能已永久移动到新网址。您的清单中是否具有读取外部存储权限?