首页 文章

如何将现有的.so库添加到Android Studio项目中?

提问于
浏览
3

有几个消息来源说你应该在src / main /中创建一个名为jniLibs / armeabi的目录,并将你编译的.so文件添加到这个位置 . 然后使用System.loadLibrary(“nameOflib”)加载库 .

我的问题是当我定义我的功能时

public native long create();

create()给出错误:

无法解析相应的JNI函数Java_com_brendan_myApplication_MainActivity_create . 报告Java中的本机方法声明,其中在项目中找不到相应的JNI函数 .

有任何想法吗?

2 回答

  • 1

    要解决该问题,请按照以下步骤操作并访问以下链接:

    在Android Studio 1.0.2中添加.so库在“src / main /”中创建文件夹“jniLibs”将所有.so库放在“src / main / jniLibs”文件夹中文件夹结构如下,| - app:| - - | --src:| - | - | - 域| - | - | - | --jniLibs | - | - | - | - | --armeabi | - | - - | - | - | - | - . so文件没有额外的代码只需同步您的项目并运行您的应用程序 . 参考https://github.com/commonsguy/sqlcipher-gradle/tree/master/src/main来自:如何在Android Studio中包含* .so库?

    编辑:我想这可能不是配置问题,而是你如何在Android NDK中声明本机方法签名

    检查此链接:What is the correct way to write native method signatures in Android NDK?

    希望它有所帮助

  • 3

    事实证明,即使存在“无法解析相应的JNI函数”的错误,我仍然可以调用jni方法 .

相关问题