jni
红豆和绿豆
这个作者很懒,什么都没留下…
展开
-
如何创建一个简单的JNI调用
JNI就是java native interface 就是java方法调用本地的C++的代码。创建JNI的几个过程(1)首先在java类中生命一个native方法(2)使用javah 将包含native方法的类编译成c++的头文件(3)按照C++头文件来写C++的源文件(4)将C++的源文件编译成动态链接库(5)把DLL文件加入到PATH环境变量下(6)java类中加载原创 2015-11-06 19:49:08 · 400 阅读 · 0 评论 -
JNI中在被调用的C/C++函数中如何访问Java程序中的类,并编写应用实例
1、在javah工具生成的C/C++函数声明中的JNIEnv类型参数和jobject类型参数的介绍JNIEXPORT void JNICALL Java_jni_TestNative_sayhello(JNIEnv * env, jobject object);JNIEnv 这个类型实际上代表java环境,这个指针JNIEnv* env可以对java代码进行操作。例如创建对象,获取对象原创 2015-11-06 20:45:21 · 1120 阅读 · 0 评论 -
JNI中如何在C++文件中调用java中的对象,举例说明
package jni;import java.util.Date;public class TestNative {public native void sayhello();public int number=10;/*** @param args*/public static void main(String[] args) {//原创 2015-11-07 15:35:27 · 1609 阅读 · 1 评论 -
JNI中如何在本地代码中生成和操作Java的对象和字符串,并编写应用实例
1、在C/C++本地代码中创建Java对象主要使用的方法就是env->NewObject(jclass,jmethod)例如:使用java中的java.util.Date对象的getTime()方法进行时间的输出JNIEXPORT void JNICALL Java_jni_TestNative_sayhello(JNIEnv *env, jobject object){原创 2015-11-07 17:30:07 · 610 阅读 · 0 评论 -
JNI中如何在本地代码C++中操作java中的基本类型的数组以及对象数组
功能:通过C++本地代码将java中的数组进行排序,并重新赋值给data数组,java输出后是排好序的数组package jni;import java.util.Random;public class TestNative {public int[] data=new int[5];public native void sayhello();public原创 2015-11-07 20:23:31 · 1344 阅读 · 0 评论 -
JNI中的全局引用/局部引用/弱全局引用、缓存jfieldID和jmethodID的两种方式
原创 2015-11-07 21:29:56 · 432 阅读 · 0 评论