Не удалось запустить проект MuPDF

У меня есть код библиотеки MuPDF, который я хочу использовать в своем приложении. Я попытался импортировать проект и попытался запустить его.

Но проблема в том, что он работает правильно и показывает список файлов PDF при запуске приложения, но когда я выбираю любой файл PDF, он просто падает и выдает ошибку, как показано ниже:

11-15 16:48:21.308: E/AndroidRuntime(31013): FATAL EXCEPTION: main
11-15 16:48:21.308: E/AndroidRuntime(31013): Process: com.artifex.mupdfdemo, PID: 31013
11-15 16:48:21.308: E/AndroidRuntime(31013): java.lang.UnsatisfiedLinkError: Couldn't load mupdf from loader dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.artifex.mupdfdemo-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.artifex.mupdfdemo-1, /vendor/lib, /system/lib]]]: findLibrary returned null
11-15 16:48:21.308: E/AndroidRuntime(31013):    at java.lang.Runtime.loadLibrary(Runtime.java:358)
11-15 16:48:21.308: E/AndroidRuntime(31013):    at java.lang.System.loadLibrary(System.java:526)
11-15 16:48:21.308: E/AndroidRuntime(31013):    at com.artifex.mupdfdemo.MuPDFCore.<clinit>(MuPDFCore.java:14)
11-15 16:48:21.308: E/AndroidRuntime(31013):    at com.artifex.mupdfdemo.MuPDFActivity.openFile(MuPDFActivity.java:214)
11-15 16:48:21.308: E/AndroidRuntime(31013):    at com.artifex.mupdfdemo.MuPDFActivity.onCreate(MuPDFActivity.java:320)
11-15 16:48:21.308: E/AndroidRuntime(31013):    at android.app.Activity.performCreate(Activity.java:5231)
11-15 16:48:21.308: E/AndroidRuntime(31013):    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
11-15 16:48:21.308: E/AndroidRuntime(31013):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2148)
11-15 16:48:21.308: E/AndroidRuntime(31013):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2233)
11-15 16:48:21.308: E/AndroidRuntime(31013):    at android.app.ActivityThread.access$800(ActivityThread.java:135)
11-15 16:48:21.308: E/AndroidRuntime(31013):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
11-15 16:48:21.308: E/AndroidRuntime(31013):    at android.os.Handler.dispatchMessage(Handler.java:102)
11-15 16:48:21.308: E/AndroidRuntime(31013):    at android.os.Looper.loop(Looper.java:136)
11-15 16:48:21.308: E/AndroidRuntime(31013):    at android.app.ActivityThread.main(ActivityThread.java:5001)
11-15 16:48:21.308: E/AndroidRuntime(31013):    at java.lang.reflect.Method.invokeNative(Native Method)
11-15 16:48:21.308: E/AndroidRuntime(31013):    at java.lang.reflect.Method.invoke(Method.java:515)
11-15 16:48:21.308: E/AndroidRuntime(31013):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
11-15 16:48:21.308: E/AndroidRuntime(31013):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
11-15 16:48:21.308: E/AndroidRuntime(31013):    at dalvik.system.NativeStart.main(Native Method)

Ошибка показывает, что приложение не может получить библиотеку, разработанную в нативном коде C/C++. Я пробовал много решений, но все же я не добился успеха в этом.

Пробованные решения:

экспорт mupdf и android studio 0.5.4

https://code.google.com/p/android/issues/detail?id=66937

Может ли кто-нибудь помочь мне решить эту ошибку?

Спасибо.


person GrIsHu    schedule 15.11.2014    source источник


Ответы (1)


Я работал над этим неделю подряд. Android Studio не будет компилироваться с помощью NDK. Вы должны использовать Eclipse.

Как только я, наконец, загрузил Eclipse и настроил его, он скомпилировался и запустился на моем устройстве. Не беда, вообще.

Следуйте инструкциям по сборке для Android на веб-сайте MuPDF.

Импорт сборки в Eclipse

Создайте его и протестируйте на своем устройстве

Свяжите его с вашим проектом:

щелкните правой кнопкой мыши пакет Mupdf в eclipse -> Свойства -> Android -> (нижняя часть окна) проверьте, является ли библиотека

щелкните правой кнопкой мыши свой пакет в eclipse -> Свойства -> android -> (в нижней части окна) нажмите «Добавить» в разделе библиотеки. Пакет Selet Mupdf и ок

Очистите свой проект из меню проекта, затем выполните отладку/запуск из меню запуска. Протестируйте его на своем устройстве. Магия!

person silversunhunter    schedule 02.12.2014