Android JNI你应该知道的

Posted warmor

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android JNI你应该知道的相关的知识,希望对你有一定的参考价值。

一.如何创建jni项目?

创建项目时选择Native C++即可。

注:编译生成的库在 build/intermediates/cmake/debug/obj下面

二.如何手写并编译一个so库

https://www.jianshu.com/p/0eddfda3da10

二.如何使用第三方so库?

1.把so拷贝到app/libs下面,需要带目录(类似arm64-v8a)一起

2.在build.gradle加如下的配置

sourceSets

  main

    jniLibs.srcDirs = ['libs']

 

3.在代码中调用的方式

static

System.loadLibrary("jnitest");//此处库的全名是libjnitest.so

public native String stringFromJNI1();

接下来就可以直接调用该函数了。

注意:

stringFromJNI1对应c/cpp里面的函数是Java_com_example_MyApp_MainActivity_stringFromJNI1,这是固定的格式:Java_packagename_classname_functionname。

 

以上是关于Android JNI你应该知道的的主要内容,如果未能解决你的问题,请参考以下文章

使用JNI时,Qt在哪里查找java类

你应该了解的JNI知识——静态注册与动态注册

你应该了解的JNI知识——静态注册与动态注册

Android Jni Android.mk经常使用语句

实例详解Android中JNI的使用方法

你应该了解的JNI知识——Java与JNI互相调用