【发布时间】:2015-12-30 00:11:38
【问题描述】:
有几个消息来源说您应该在 src/main/ 中创建一个名为 jniLibs/armeabi 的目录,并将您编译的 .so 文件添加到该位置。然后使用 System.loadLibrary("nameOflib") 加载您的库。
我的问题是当我定义我的函数时
public native long create();
create() 给出错误:
无法解析对应的 JNI 函数 Java_com_brendan_myApplication_MainActivity_create。 报告项目中未找到对应 JNI 函数的 Java 中的本机方法声明。
有什么想法吗?
【问题讨论】:
-
您使用的是哪个版本的 Android Studio 和哪个 gradle 插件?
-
Android Studio 1.5.1,gradle 2.8
-
不确定,它是最新版本之一。我可以试试旧版本看看是否有区别。
-
是的,build.gradle 文件语法有很大不同。如果您有
apply plugin: 'com.android.application',那么piotrek1543 的instructions 正是您所需要的。但不要指望 Android Studio 会神奇地将本机方法声明解析为预构建库。
标签: android android-studio android-ndk java-native-interface