作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我有一个简单但非常具体的问题。
我在一个 C++ 项目(非 Android)中构建了一个共享库 .so,我正在将其用于其他项目。
我现在想用它来开发带有 Android NDK 的 Android 应用程序。在/app/src/main/jni 文件夹中,我有 cpp 文件,我想使用我的库的功能。这里是 .cpp 文件的内容
#include <string.h>
#include <jni.h>
#include <mysharedlibrary.h>
jstring
Java_com_example_nativeapp_MyActivity_stringFromJNI( JNIEnv* env,
jobject thiz ) {
ObjectFromSharedLibrary obj;
functionFromSharedLibrary(obj);
...
}
但是我真的不知道该怎么做。我花了最后 2 天时间寻找答案,但一无所获
这里是我的环境:
我想知道这是否可能以及如何从头开始正确地做到这一点。
提前致谢
最佳答案
首先使用 eclipse 构建您的 .so 共享库。现在使用 gradle 0.7.2+ 在 Android Studio 中添加您生成的 *.so 文件。首先在这个位置/app/src/main/位置创建 jniLibs,然后复制 jniLibs 中所有包含 *.so 文件(armeabi、armeabi-v7a、mips、x86)的文件夹。如图所示Link
关于android - 如何将本地c++共享库.so导入Android studio 1.5?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33930542/
我是一名优秀的程序员,十分优秀!