Android NDK开发简介
文章平均质量分 85
好久之前写过JNI,一直没好好总结。这里好好总结下JNI开发,已一个初学者的心态,从环境搭建到简单输入输出都进行了简单讲解。
天宇240
爱运动,爱编程,疯一样的耍,傻一般的研究技术。我的名言:是bug,总能找到的。
展开
-
Android NDK开发系列教程6:JNI函数注册(JNI_OnLoad)
在使用native方法前都会先加载该native方法的so文件,通常在一个类的静态代码块中进行加载,当然也可以在构造函数,或者调用前加载。jvm在加载so时都会先调用so中的JNI_OnLoad函数,如果你没有重写该方法,那么系统会给你自动生成一个。JNI_OnLoad方法的调用顺序可以参考我的另一篇博文:JNI_OnLoad调用时机,下面我们可以在该方法中对自己的函数进行注册。这就很爽了,jni原创 2018-02-07 16:35:20 · 1267 阅读 · 0 评论 -
Android NDK开发系列教程5:局部引用,全局引用,弱全局引用
终于建了一个自己个人小站:https://huangtianyu.gitee.io,以后优先更新小站博客,欢迎进站,O(∩_∩)O~~1. 简介从Java虚拟机创建的对象当传入到native层时会产生一个引用,在进行垃圾回收时如果有native的引用,改对象同样也不会被回收。在native引用中分局部引用和全局引用。1.1 局部引用局部引用又称本地引用,大多数见到的引用都是局部...原创 2018-02-07 23:56:00 · 732 阅读 · 0 评论 -
Android NDK开发系列教程4:对类变量进行操作
终于建了一个自己个人小站:https://huangtianyu.gitee.io,以后优先更新小站博客,欢迎进站,O(∩_∩)O~~ 通常我们也可以直接利用jni来访问和处理类的变量,不一定非要通过Java方法来操作Java类变量。对类变量操作时,类的静态变量和类的实例变量的操作稍微有些不同,下面进行讲解。对类的静态变量进行操作类的静态变量属于类,是所有该类实例共享的。操作该变量时,不...原创 2018-02-07 23:55:49 · 310 阅读 · 0 评论 -
Android NDK开发系列教程3:基本方法调用及传参(续)
终于建了一个自己个人小站:https://huangtianyu.gitee.io,以后优先更新小站博客,欢迎进站,O(∩_∩)O~~ 上一节主要讲解Java向native传参,下面主要讲解从native传相应的数据到java层。 接着上一节,下面主要讲解内容如下: 1. native向java返回字符串类型 2. native向java返回java对象 3. native向java返回...原创 2018-02-07 23:55:30 · 412 阅读 · 0 评论 -
Android NDK开发系列教程2:基本方法调用及传参
终于建了一个自己个人小站:https://huangtianyu.gitee.io,以后优先更新小站博客,欢迎进站,O(∩_∩)O~~1. 简介有时候我写了个Java层的方法,希望native层也能够调用(尤其是一个实体类的get,set方法在native一般都会用到)。这在jni开发中也很常见,jni.h中也提供了很多方法。下面利用具体实例进行说明。这里直接使用AS3.0里面的CMake...原创 2018-02-07 23:55:18 · 425 阅读 · 0 评论 -
Android NDK开发系列教程1:环境搭建及基本代码结构
终于建了一个自己个人小站:https://huangtianyu.gitee.io,以后优先更新小站博客,欢迎进站,O(∩_∩)O~~ JNI全称 Java Native Interface , java本地化接口。即JNI是定义了一系列接口,所有实现该接口的JVM虚拟机都可以通过该接口实现Java和C/C++的混合编程。java和C/C++不同 , 它不会直接编译成平台机器码,而是编译成虚拟机...原创 2018-02-07 23:55:08 · 372 阅读 · 0 评论