加载armabi库或加载.so文件

时间:2015-05-31 10:14:09

标签: android

我想使用<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-sdk android:minSdkVersion="14" android:targetSdkVersion="18" /> <application android:name="com.yns.volumelock.CastApplication" android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> <activity android:name=".MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <receiver android:name="com.google.android.libraries.cast.companionlibrary.remotecontrol.VideoIntentReceiver" > <intent-filter> <action android:name="android.media.AUDIO_BECOMING_NOISY" /> <action android:name="android.intent.action.MEDIA_BUTTON" /> <action android:name="com.google.android.libraries.cast.companionlibrary.action.toggleplayback" /> <action android:name="com.google.android.libraries.cast.companionlibrary.action.stop" /> </intent-filter> </receiver> <service android:name="com.google.android.libraries.cast.companionlibrary.notification.VideoCastNotificationService" android:exported="false" > <intent-filter> <action android:name="com.google.android.libraries.cast.companionlibrary.action.toggleplayback" /> <action android:name="com.google.android.libraries.cast.companionlibrary.action.stop" /> <action android:name="com.google.android.libraries.cast.companionlibrary.action.notificationvisibility" /> </intent-filter> </service> <service android:name="com.google.android.libraries.cast.companionlibrary.cast.reconnection.ReconnectionService" /> <activity android:name="com.google.android.libraries.cast.companionlibrary.cast.tracks.CaptionsPreferenceActivity" android:label="@string/action_settings" > <intent-filter> <action android:name="android.intent.action.MAIN" /> </intent-filter> </activity> <service android:name="com.yns.volumelock.VolumeService" android:enabled="true" > </service> </application> 库在我的应用程序中显示pdf文件。我已经成功编译了库,但是当我想显示以下logcat时出现的pdf错误:

Android-pdfview

我已经阅读了几个小时并发现,我必须编译 java.lang.UnsatisfiedLinkError: Couldn't load vudroid from loader dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/de.gestureanywhere-1.apk"],nativeLibraryDirectories=[/data/app-lib/de.gestureanywhere-1, /vendor/lib, /system/lib]]]: findLibrary returned null at java.lang.Runtime.loadLibrary(Runtime.java:358) at java.lang.System.loadLibrary(System.java:526) at de.gestureanywhere.Changelog_View.onCreate(Changelog_View.java:60) at android.app.Activity.performCreate(Activity.java:5241) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2151) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2236) at android.app.ActivityThread.access$800(ActivityThread.java:138) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1199) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:136) at android.app.ActivityThread.main(ActivityThread.java:5034) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:515) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:795) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:611) at dalvik.system.NativeStart.main(Native Method) 或者必须编译libvudroid.so库。

但我以前读过的所有内容都无法奏效。

那么您能否为我提供一步一步的解决方案如何编译库?

我的gradle文件现在看起来像这样:

armeabi

非常感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

The jar file does not contain the native libraries required for the pdfview library to work.

Instead of

compile files ( 'libs/android-pdfview-1.0.3.jar' )

use

compile 'com.joanzapata.pdfview:android-pdfview:1.0.4@aar'

to load the AAR package dependency which contains the java and native library.