Android,尝试使用 muPDF 在我的 Xamarin android 应用程序中查看 PDF

Android, Attempting to view a PDF within my Xamarin android application using muPDF

我正在尝试使用 muPDF 在我的应用程序内部查看 PDF。我已按照这些说明将软件包安装到我的项目中: https://www.nuget.org/packages/Askaiser.Android.MuPDF/

这是我实现代码的方式:

File file = (File)fileFromAsset(this, "test.pdf");
var uri = Android.Net.Uri.Parse(file.AbsolutePath);
var intent0 = new Intent(this, typeof(MuPDFActivity));
intent0.SetFlags(ActivityFlags.NoHistory);
intent0.SetAction(Intent.ActionView);
intent0.SetData(uri);
StartActivity(intent0); 

但是,我在尝试查看文件时总是遇到此错误:

Java.Lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file 
    "/data/app/Xamarin_MuPDF.Xamarin_MuPDF-1/base.apk"],
    nativeLibraryDirectories=[/data/app/Xamarin_MuPDF.Xamarin_MuPDF-1/lib/arm64, 
    /vendor/lib64, /system/lib64]]] couldn't find "libmupdf_java.so"

谁能帮我解决这个问题。

提前致谢。

该项目仅包含 armv7 和 x86 库:

https://github.com/asimmon/MuPDF-for-Xamarin-Android/tree/master/src/Askaiser.Android.MuPDF/libs

您的错误消息清楚地表明该应用正在尝试加载 arm64 库,因此失败也就不足为奇了。

您需要:

  1. 添加 arm64 库(或询问项目所有者)

  2. 从您的应用中移除 arm64 支持;这里有一些帮助:(但我不确定你是如何使用 Xamarin 做到这一点的)