如何使用MuPDF从android资产文件夹中读取文件?

时间:2013-09-30 16:21:26

标签: android pdf android-ndk android-assets mupdf

我正在构建一个用于查看pdf文件的应用程序。我可以建立MuPDF库。

我希望我的应用只打开pdf文件,我将保留在 / assets 文件夹中。提供的源代码附带从SD卡读取文件的代码。我想阅读并显示随应用程序提供的文件(在 / assets / raw 文件夹中,无论哪个都可行)

我是NDK的新手。请指导我。

1 个答案:

答案 0 :(得分:2)

资产中的文件不会作为单个文件存储在设备上。 APK是压缩的ZIP文件; assets文件夹只存在于那里。

首次运行应用程序时从资产中复制文件(例如,请参阅here)。

编辑:如果MuPDF获取文件的唯一方法是按文件名,那你就不走运了。它不一定是SD卡 - 您可以使用应用程序的内部存储文件夹(使用Context.getDir()获取一个)。如果它可以占用内存中的数据块,您可以通过AAssetManager(或Java)在调用者端读取文件,并将数据传递给库。

也许Android有一个你可以利用的内存临时文件系统;我不确定。