我试图让这个工作,我在网上查看了许多不同的资源(正如你从我所做的所有评论中看到的那样)。我想访问位于 assets 或 res 中的 .pdf 文件;哪一个都没有关系,所以最简单的方法就可以了。
我有下面的方法,它将获取实际文件,并将调用另一个方法(在下面的第一个方法下),参数中包含 Uri。
非常感谢您的帮助,我将随时回答问题或添加更多内容。
private void showDocument(File file)
{
//////////// ORIGINAL ////////////////////
//showDocument(Uri.fromFile(file));
//////////////////////////////////////////
// try 1
//File file = new File("file:///android_asset/RELATIVEPATH");
// try 2
//Resources resources = this.getResources();
// try 4
String PLACEHOLDER= "file:///android_asset/example.pdf";
File f = new File(PLACEHOLDER);
//File f = new File("android.resource://res/raw/slides1/example.pdf");
//getResources().openRawResource(R.raw.example);
// try 3
//Resources resources = this.getResources();
//showDocument(Uri.parse(ContentResolver.SCHEME_ANDROID_RESOURCE + "://" + resources.getResourcePackageName(R.raw.example) + '/' + resources.getResourceTypeName(R.raw.example) + '/' + resources.getResourceEntryName(R.raw.example)));
showDocument(Uri.fromFile(f));
}
protected abstract void showDocument(Uri uri);