JNI
文章平均质量分 68
闲暇部落
OpenGL、音视频、Linux、Android、Studio、Kotlin,Java,Git,Unity,面试
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
CMakeLists.txt文件详解
本文介绍了在Android Studio项目中使用CMake的基本配置方法。主要内容包括:1) 设置最低CMake版本要求(3.22.1);2) 声明项目名称(nativec);3) 使用add_library命令创建共享库并指定源文件;4) 通过target_link_libraries链接Android日志库。文档还提供了相关官方文档和示例链接,强调了项目名称必须与.so库名称一致的重要注意事项。原创 2025-09-15 16:09:19 · 272 阅读 · 0 评论 -
JNI初识
本文介绍了在Android Studio中配置C/C++项目的完整流程。首先通过开发者文档创建原生项目,然后详细说明了CMakeLists.txt文件的配置方法(参考CSDN博文)。重点讲解了如何将原生库关联到Gradle,包括在build.gradle中添加externalNativeBuild块、配置CMake参数(如编译器标志、ABI过滤等)以及指定构建目标。文章还提供了ABI配置建议,推荐使用App Bundle格式以减少包体积,并给出了相关官方文档和CMake命令的参考链接。原创 2025-09-10 19:11:09 · 190 阅读 · 0 评论 -
Java层与Jni层数据传递的几种方式
一、 从Java传递数组到Jni层二、 从Jni层传递数组到Java层三、 Direct Buffer 方式传递原创 2018-09-07 12:21:53 · 1545 阅读 · 0 评论 -
Java JNI由浅入深(包括:Java和C++互传ArrayList泛型对象参数)
我们知道Java是一个运行在虚拟机里面的高级的编程语言,如果要调用系统的动态链接库的话,就要先声明native修饰的方法(类似接口里面的方法),再由C/C++程序来实现(类似实现接口里的方法)。这样Java调用这些native方法就相当于调用了C/C++里面实现了的方法。通常我们把这种机制叫做JNI(Java NativeInterfac),即Java 本地编程接口 Androi...转载 2018-05-17 11:53:58 · 915 阅读 · 0 评论 -
解析Java的JNI编程中的对象引用与内存泄漏问题
JNI,Java Native Interface,是 native code 的编程接口。JNI 使 Java 代码程序可以与 native code 交互——在 Java 程序中调用 native code;在 native code 中嵌入 Java 虚拟机调用 Java 的代码。JNI 编程在软件开发中运用广泛,其优势可以归结为以下几点:利用 native code 的平台相关性,在平台相...转载 2018-04-03 18:50:43 · 2736 阅读 · 0 评论 -
在 JNI 编程中避免内存泄漏与崩溃
JNI 编程简介JNI,Java Native Interface,是 native code 的编程接口。JNI 使 Java 代码程序可以与 native code 交互——在 Java 程序中调用 native code;在 native code 中嵌入 Java 虚拟机调用 Java 的代码。JNI 编程在软件开发中运用广泛,其优势可以归结为以下几点:利用 native code 的平台...转载 2018-04-03 14:48:43 · 1040 阅读 · 0 评论 -
JNI多线程与内存回收
Android下的JNI创建多线程的方法- http://blog.csdn.net/panda1234lee/article/details/13503291问题1:JNIEnv是一个线程相关的变量;JNIEnv 对于每个 thread 而言是唯一的 ;JNIEnv *env指针不可以为多个线程共用解决办法:但是java虚拟机的JavaVM指针是整个jvm公用的,我们可以通过JavaVM来得到...转载 2018-04-02 18:23:08 · 1468 阅读 · 0 评论 -
JNI内存的回收
一、简介JNI规范中定义了三种引用——全局引用(Global reference),局部引用(Local reference),弱全局引用(Weak global reference)。 这算三种引用的生存期是不同的。全局引用的生存期为创建之后,直到程序员显式的释放它。局部引用的生存期为创建后,直到程序员显式的释放他们,或在当前上下文(可以理解成Java程序调用Native代码的过程)结束之后没有...转载 2018-04-02 18:21:50 · 1966 阅读 · 0 评论 -
JNI内存泄露处理方法汇总
在c++中new的对象,如果不返回java,必须用release掉,否则内存泄露。包括NewStringUTF,NewObject。如果返回java不必release,java会自己回收。[cpp] view plain copyjstring jstr = env->NewStringUTF((*p).sess_id); ... env->DeleteLocalRef( j...转载 2018-04-02 18:19:49 · 1546 阅读 · 0 评论 -
JNI---uint8_t array转string
#define SOFTWARE_VSERSION_LEN 16+1 //加1代表数组末尾追加'\0'#define GLXSS_ID_LEN 8+1 //加1代表数组末尾追加'\0'typedef struct sensor_product_info{ uint8_t software_vers原创 2017-09-11 17:19:46 · 2706 阅读 · 0 评论
分享