我正在使用NanoHTTPD将文件提供给WebView,并且在某些文件上出现随机的“权限被拒绝”错误。
这种情况很少发生,并且不在特定文件上发生,而且我观察到甚至在此功能之外。
它看起来像一个Android错误,因为权限拒绝可能发生在多个文件文件夹中的单个文件上。
这些文件夹存储在getExternalFilesDir(Environment.DIRECTORY_DOWNLOADS)中。
private InputStream loadResourceStream(String uri) {
File initialFile = new File(uri);
InputStream targetStream = null;
try {
targetStream = new FileInputStream(initialFile);
} catch (FileNotFoundException e) {
logNonFatalError(e);
e.printStackTrace();
}
return targetStream;
}
错误抛出
targetStream = new FileInputStream(initialFile);
最佳答案
如果尝试保存文件,则应向存储设备中的写入文件请求运行时权限。