android - 将.so文件添加到android studio时出现UnsatisfiedLinkError

标签 android android-studio android-ndk java-native-interface

我正在尝试包括 https://github.com/GerardSoleCa/Robosodium在我的 android 工作室项目中。我正在运行 Android Studio 1.4.1

我用编译后的 .so 文件创建了一个 jniLibs 文件夹。我在我的主要 Activity 中初始化了库,如下所示:

static {
    System.loadLibrary("libkaliumjni");
}

当我运行这个项目时,我得到了这个:

java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/be.example.libtest-1/base.apk"],nativeLibraryDirectories=[/data/app/be.example.libtest-1/lib/x86, /vendor/lib, /system/lib]]] couldn't find "liblibkaliumjni.so"

我的文件夹结构是:

enter image description here

有人可以帮我解决这个问题吗?

编辑:

这是我的build.gradle

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.1"

    defaultConfig {
        applicationId "be.example.libtest"
        minSdkVersion 16
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:23.1.0'
    compile 'com.android.support:design:23.1.0'
}

最佳答案

试着改变这个:

static {
    System.loadLibrary("libkaliumjni");
}

为此:

static {
    System.loadLibrary("kaliumjni");
}

关于android - 将.so文件添加到android studio时出现UnsatisfiedLinkError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33563962/

相关文章:

git - 为什么 .gitignore 不适用于 Android Studio 中的新项目?

java - 任务 ':app:transformDexArchiveWithExternalLibsDexMergerForDebug' 执行失败

android - 如何在android中编译ARM v7I的模块?

android - 如何在 Android native 代码中导入 media/stagefright/* 类

android - 删除索引无法正常工作的SQlite Android

android - 在android上的sqlite数据库中创建表

Android Studio - 如何从高于 min 的 API 中查找方法以及如何处理它们?

Android adb wireless/WIFI调试操作超时

Android BottomSheetBehavior 回调方法 onSlide() 给出了令人困惑的 slideOffset 值

android - WebView 中的内存泄漏