JNI
归零
无
展开
-
JNI学习笔记一
java 调用本地方法 在java类中添加native方法 使用javah 生成c/c++头文件 javah.exe 在jdk目录下的bin中 命令格式如下: javah 类的全路径 (workspace中的bin目录下) 按照生成的头文件编写c/c++源文件 示例代码如下: #include "cn_yue_jni_TestNative.h" #include <...2012-09-04 10:25:00 · 75 阅读 · 0 评论 -
JNI学习笔记二
本地代码访问java代码 JNIEnv类型实际上代表了java环境 JNIEnv类中的常用函数 NewObjece NewString New<TYPE> Array Get/Set<TYPE> field Get/SetStatic<TYPE> field Call<TYPE> Method CallS...2012-09-04 10:26:00 · 63 阅读 · 0 评论 -
JNI学习笔记三
访问java类中的属性和方法 jfileID 属性 jmethodID 方法 JNIEnv 的函数 GetFieldID GetStaticFieldID GetMethodID GetStaticMethodID 示例代码 env_>GetMethodID(data_Clazz,"<int>","()V") 整体实例方法 java 代码 pub...2012-09-04 10:27:00 · 76 阅读 · 0 评论 -
JNI学习笔记四
本地代码中创建java对象 //第二个参数为构造方法 jobject NewObject(jclass clazz, jmethodID methodID, ...) 示例代码(使用默认构造器创建对象): jclass clazz_date=ent->FindClass("java/util/Date"); jmethodID mid_date=env->...2012-09-04 10:28:00 · 165 阅读 · 0 评论 -
JNI学习笔记六
全局引用/局部引用/弱全局引用 java对象传到本地代码时会产生引用,这样就会产生垃圾回收问题 全局引用 Global Reference 跨越当前线程,在多个native中有效,需要手动释放 ReleaseGlobalRef函数释放 示例代码 jobject NewGlobalRef(jobject obj); void DeleteGlobalRef(jobj...2012-09-04 10:29:00 · 76 阅读 · 0 评论 -
JNI学习笔记五
处理数组 基本类型的数组 Get<TPYE> ArrayElements(<TYPE>Array arr,jboolean* isCopied); Release<TPYE> ArrayElements(<TYPE>Array arr,jboolean* isCopied); GetPrimitivArrayCritical(<...2012-09-04 10:29:00 · 61 阅读 · 0 评论