我使用MuPdf库创建了一个android pdf阅读器。我的问题是当我更改uri以从原始资源 Uri uri = Uri.parse("android.resource/[package]/" + R.raw.[pdf])
访问pdf文件时,我收到java.lang.RuntimeException
错误。但是当我更改uri以从SD卡访问pdf文件 Uri uri = Uri.parse("file:///sdcard/[pdf]")
时,我将没有错误,它会成功读取并显示pdf文件。我的主要目标是从资源中读取和显示pdf文件,而不是从SD卡读取和显示。你对如何解决这个问题有任何想法吗?
答案 0 :(得分:0)
这样做,它对我有用:)
Uri uri = Uri.parse("android.resource://com.xxx.appname/raw/pdfId");
答案 1 :(得分:0)
对我不起作用!
String path="android.resource://com.artifex.mupdfdemo/raw/"
+ String.valueOf(R.raw.example_katalog);
结果
08-05 15:26:50.748:E / libmupdf(18977):失败:无法打开文档:'/ raw / 2131034112'
这个问题有解决方案吗?
答案 2 :(得分:0)
尝试一下
Uri uri = Uri.parse("android.resource://"+getPackageName()+"/raw/" + "pdfname");
try {
BufferedReader reader = new BufferedReader(new InputStreamReader(getContentResolver().openInputStream(uri)));
...
} catch ...