Android java传递int类型数组给C
2016-07-01 23:01
309 查看
接着前面的文章《Android java传递int类型数据给C》《Android java传递string类型数据给C》,继续实践
实现public native int[] arrElementsIncrease(int[] intArray);
项目布局
实现arrElementsIncrease函数
MainActivity.java中添加下面的代码:
获取更多C相关知识,关注公众号:“csuanfa”
实现public native int[] arrElementsIncrease(int[] intArray);
项目布局
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".MainActivity" > <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="click" android:text="传递int类型参数" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="passString" android:text="传递String类型参数" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="passIntArray" android:text="传递Int类型数组" /> </LinearLayout>
实现arrElementsIncrease函数
/* * Class: com_wuyudong_javapassdata_JNI * Method: arrElementsIncrease * Signature: ([I)[I */JNIEXPORT jintArray JNICALL Java_com_wuyudong_javapassdata_JNI_arrElementsIncrease( JNIEnv * env, jobject clazz, jintArray jArray){ jsize len = (*env)->GetArrayLength(env, jArray); // jboolean iscopy; int* arrayPointer = (*env)->GetIntArrayElements(env, jArray, NULL); int i; for(i = 0; i < len; i++){ *(arrayPointer + i) += 10; } return jArray; }
MainActivity.java中添加下面的代码:
public void passIntArray(View v) { int[] array = new int[] { 1, 2, 3, 4, 5 }; int[] newArray = jni.arrElementsIncrease(array); for (int i : newArray) { Log.d("test", i + ""); } }
获取更多C相关知识,关注公众号:“csuanfa”
相关文章推荐
- XUtils
- Android平台上,瓦片地图的引入失败
- android 获取Android Studio的签名文件
- 创建自己的CoordinatorLayout实现
- [Android]自定义广播之标准广播
- Android图片加载选择
- Android:各种Dialog创建及其监听事件实现
- android解析Json数据
- android硬件加速 setLayerType
- android horizontalScrollView
- Android中 怎么获取apk中的素材图片
- android Mediaplayer各种属性和方法简单介绍
- 多目录的Android.mk编写--遍历目录下所有C文件
- windows下PHP批量生成打包android程序APK-渠道txt植入apk文件
- StateList Drawable文件
- Android_基础 Notification
- 安卓动画集
- Android快速开发系列 10个常用工具类
- 跟我学Android之五 常规组件
- 跟我学Android之五 常规组件