不满意链接错误pdftron

时间:2014-06-12 12:41:26

标签: android pdf pdftron

我正在运行pdftron Complete Reader示例,但无法运行该项目。 我使用组装项目 http://blog.pdftron.com/2013/08/09/getting-started-with-android/#toolslib

这一行给出错误 -

// Initialize thumbnail cache for the recent list.
try {
    RecentlyUsedCache.initializeRecentlyUsedCache(RecentFilesManager.MAX_NUM_RECENT_FILES, 10 * 1024 * 1024, 0.1);
} catch (PDFNetException e) {
}

错误

06-12 18:00:14.703: E/AndroidRuntime(2842): FATAL EXCEPTION: main
06-12 18:00:14.703: E/AndroidRuntime(2842): java.lang.UnsatisfiedLinkError: Native method not found: pdftron.Common.RecentlyUsedCache.InitializeRecentlyUsedCache:(JJD)V
06-12 18:00:14.703: E/AndroidRuntime(2842):     at pdftron.Common.RecentlyUsedCache.InitializeRecentlyUsedCache(Native Method)
06-12 18:00:14.703: E/AndroidRuntime(2842):     at pdftron.Common.RecentlyUsedCache.initializeRecentlyUsedCache(SourceFile:89)
06-12 18:00:14.703: E/AndroidRuntime(2842):     at com.pdftron.pdfnet.demo.completereader.viewer.CompleteReaderMainActivity.onCreate(CompleteReaderMainActivity.java:105)
06-12 18:00:14.703: E/AndroidRuntime(2842):     at android.app.Activity.performCreate(Activity.java:5185)
06-12 18:00:14.703: E/AndroidRuntime(2842):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094)
06-12 18:00:14.703: E/AndroidRuntime(2842):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2071)
06-12 18:00:14.703: E/AndroidRuntime(2842):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2132)
06-12 18:00:14.703: E/AndroidRuntime(2842):     at android.app.ActivityThread.access$700(ActivityThread.java:140)
06-12 18:00:14.703: E/AndroidRuntime(2842):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1238)
06-12 18:00:14.703: E/AndroidRuntime(2842):     at android.os.Handler.dispatchMessage(Handler.java:99)
06-12 18:00:14.703: E/AndroidRuntime(2842):     at android.os.Looper.loop(Looper.java:137)
06-12 18:00:14.703: E/AndroidRuntime(2842):     at android.app.ActivityThread.main(ActivityThread.java:4918)
06-12 18:00:14.703: E/AndroidRuntime(2842):     at java.lang.reflect.Method.invokeNative(Native Method)
06-12 18:00:14.703: E/AndroidRuntime(2842):     at java.lang.reflect.Method.invoke(Method.java:511)
06-12 18:00:14.703: E/AndroidRuntime(2842):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:994)
06-12 18:00:14.703: E/AndroidRuntime(2842):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:761)
06-12 18:00:14.703: E/AndroidRuntime(2842):     at dalvik.system.NativeStart.main(Native Method)

提前致谢。

1 个答案:

答案 0 :(得分:0)

如果你仍然被困(怀疑)或者这有助于其他人......

我也有这个问题,但我发现使用试用包的lib文件夹中的“完整”.so文件而不是“标准”文件解决了它。

根据Bob的要求:

PDFTron SDK附带两组库.so文件,标准集和更完整的全套,两者都可以在SDK的“lib”文件夹下找到。似乎导致错误的缺失函数不包含在标准库中,但包含在完整库中,因此这是必须导入的依赖项。

我相信这是使用Eclipse中的向导完成的(抱歉,我使用Android Stiudio),您只需指向正确的文件(在'lib / full / ,无论cpu平台'文件夹中) ),或者如果您的应用涵盖ARM和英特尔

,则导入所有这些内容

但是对于Android Studio,似乎还需要一个额外的步骤,即在转换到项目并将其作为文件依赖引用之前将.so文件打包成.jar。 Assaf在Include .so library in apk in android studio底部的答案记录了这一点。