尝试显示从服务器收到的PDF,但收到“未找到媒体错误”
首先我将String转换为字节数组:
byte[] data = Base64.decode(stringData, Base64.DEFAULT);
然后我将byte []写入文件:
String path = getFilesDir() + "/myfile.pdf";
File file = new File(path);
if (!file.exists()) {
file.createNewFile();
}
FileOutputStream stream = new FileOutputStream(file);
stream.write(article.getFileDataBytes());
stream.close();
然后我尝试显示PDF:
Uri path2 = Uri.fromFile(file);
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(path2, "application/pdf");
startActivity(intent);
但在调用startActivity后,我收到“未找到媒体错误”
我不确定在编写文件
时没有抛出异常是什么错误答案 0 :(得分:1)
您正在将文件写入内部存储空间。没有第三方应用可以直接访问您的内部存储。使用FileProvider
将PDF提供给第三方应用。
This sample app几乎可以满足您的需求。