Ndk学习之JNI获取数组(Java-->C-->Java)
2017-12-25 08:11
381 查看
1.在java中定义方法以及获取C中返回值的方法
public native int[] getArray(int len);2.javah生成头文件
2.javah生成头文件
public native int[] getArray(int len);2.javah生成头文件
/* * Class: com_boom_JNITest * Method: getArray * Signature: (I)[I */ JNIEXPORT jintArray JNICALL Java_com_boom_JNITest_getArray (JNIEnv *, jobject, jint);3.源文件中对代码进行具体实现
//返回数组 JNIEXPORT jintArray JNICALL Java_com_boom_JNITest_getArray (JNIEnv *env, jobject jobj, jint len){ //创建一个指定大小的数组 jintArray jint_arr = (*env)->NewIntArray(env,len); jint *elems = (*env)->GetIntArrayElements(env,jint_arr,NULL); int i = 0; for (;i<len;i++){ elems[i] = i; } //同步 (*env)->ReleaseIntArrayElements(env,jint_arr,elems,0); return jint_arr; }
2.javah生成头文件
相关文章推荐
- Ndk学习之JNI属性和静态属性(Java->C)
- Ndk学习之JNI调用父类方法(java-->C)
- Ndk学习之JNI方法和静态方法(java-->C)
- Ndk学习之JNI中文问题(java-->C-->Java)
- 黑马程序员java学习—如何获取数组中的最大值
- java 从零开始,学习笔记之基础入门<数组列表(ArrayList)>(九)
- 我的Java开发学习之旅------>工具类:Java获取字符串和文件进行MD5值
- Android(java)学习笔记256:JNI之NDK的概念
- Android NDK (学习笔记六) —— JNI交互间数组的处理
- ndk学习18: JNI之C&C++调用Java
- NDK开发学习笔记(3):JNI访问数组、引用、异常处理、缓存策略
- Android Studio NDK 学习之接受Java传入的Int数组
- java学习之JNI 学习五 处理数组
- JNI学习笔记 C++传递结构体、String、数组对象给JavaC++传递结构体、String、数组对象给Java
- Android(java)学习笔记257:JNI之helloword案例(利用NDK工具)
- JAVA->JNI 传递字符串数组
- JNI学习笔记:(1)开篇(2)本地代码访问Java代码 (3)本地方法取得Java属性/调用java方法 (4)本地代码创建Java对象(包括javaString) (5) 本地方法处理java数组
- Java学习笔记<5>数组
- Android(java)学习笔记259:JNI之NDK开发步骤
- java 从零开始,学习笔记之基础入门<数组>(七)