摘要: JNI代码都写好了,在编译之前我们有非常重要的一部,就是写mk文件,mk文件就相当于gcc编译时的Makefile文件,它是用来告诉编译器如何去编译的。 这里只对自己理解和常用的知识点做记录,想要看关于android.mk的全部解释请移步android.mk。 阅读全文
posted @ 2017-09-04 21:35 行走的段子 阅读(224) 评论(0) 推荐(0) 编辑
摘要: JNI中数据类型的意义在于桥接Java数据类型与C数据类型。 简单数据类型: Java Type Native Type Description boolean jboolean unsigned 8 bits byte jbyte signed 8 bits char jchar unsigned 阅读全文
posted @ 2017-09-04 18:24 行走的段子 阅读(301) 评论(0) 推荐(0) 编辑
摘要: 所谓动态注册,就是不用像静态注册那样按规则严格的命名native方法,而是在加载so库的时候完成这个从Java方法到native方法的匹配工作,而这个匹配工作,需要我们写native代码来完成。下面直入正题看看怎么写。 涉及的几个函数和实体(结构体) 定义一个Java中声明的方法和native中实现 阅读全文
posted @ 2017-09-04 17:30 行走的段子 阅读(277) 评论(0) 推荐(0) 编辑
摘要: 这篇说静态注册,所谓静态注册,就是native的方法是直接通过方法名的规定格式和Java端的声明处代码对应起来的,其对应规则如下: JNIEXPORT <返回值> JNICALL Java_<包路径(.换成_)>_<类名>_<方法名>(JNIEnv *, jobject<,方法参数>) 假设在Hel 阅读全文
posted @ 2017-09-04 13:02 行走的段子 阅读(241) 评论(0) 推荐(0) 编辑