MuPDF在Android应用程序中呈现空的pdf文件

时间:2014-06-03 18:24:27

标签: java android pdf layout mupdf

我试图使用MuPDF库在我的应用程序中打开pdf文件。我已经按照步骤将Mupdf与我的项目集成,它可以在我的应用程序上显示文件结构,让我选择pdf文件。但是当我点击pdf文件时,它会打开一个空白屏幕。它不会抛出任何错误。我从Play市场下载的MuPDF应用程序工作正常,可以正常呈现pdf文件。

我按照此主题中的步骤进行操作:Integrate MuPDF Reader in an app

我把这部分放在我的活动类文件中,希望它能将数据传输到屏幕上:

To open pdf with pre-fix file:

    Uri uri = Uri.parse("path to pdf file");

    Intent intent = new Intent(context, MuPDFActivity.class);

    intent.setAction(Intent.ACTION_VIEW);

    intent.setData(uri);

    context.startActivity(intent);

有关可能出错或遗失的任何建议? 任何意见都将受到重视。

更新:我发现,正如评论所提到的,mupdf并非由任何课程启动。所以我改变了我的代码以在choosePDFActivity.java中触发该类:

    @Override
protected void onListItemClick(ListView l, View v, int position, long id) {
    super.onListItemClick(l, v, position, id);

    mPositions.put(mDirectory.getAbsolutePath(), getListView().getFirstVisiblePosition());

    if (position < (mParent == null ? 0 : 1)) {
        mDirectory = mParent;
        mHandler.post(mUpdateFiles);
        return;
    }

    position -= (mParent == null ? 0 : 1);

    if (position < mDirs.length) {
        mDirectory = mDirs[position];
        mHandler.post(mUpdateFiles);
        return;
    }

    position -= mDirs.length;

    Uri uri = Uri.parse(mFiles[position].getAbsolutePath());
    Intent intent = new Intent(this,MuPDFActivity.class);
    intent.setAction(Intent.ACTION_VIEW);
    intent.setData(uri);
    startActivity(intent);
}

现在它打开了Mupdf,但出现了一些错误:

06-12 10:31:51.875:W / dalvikvm(6551):异常Ljava / lang / UnsatisfiedLinkError;在初始化Ltys / app / test / MuPDFCore时抛出;

现在当我点击一个pdf文件时,它弹出一个错误消息。这到了某个地方。请帮忙!

1 个答案:

答案 0 :(得分:1)

看起来您没有正确地将MuPDF集成到您的项目中。 MuPDF使用本机代码来完成其呈现,并且未正确包含本机代码 - 因此logcat中的UnsatisfiedLinkError。确保为所测试的设备(ARM / ARMv7 / x86等)包含正确的JNI二进制文件。

另见Android MuPDF Error