JNI的开发流程
来源:互联网 发布:mac怎么输入货币符号 编辑:程序博客网 时间:2024/05/16 17:20
这几天一直在研究JNI的开发过程,顺便把NDK环境搭建一起总结下。在windows环境下开发jni需要c/c++编译器的支持,网络上我看很多人使用cygwin。呵呵我不是很喜欢使用它,感觉安装起来挺麻烦的。我使用GNUStep,下载地址http://www.gnustep.org/experience/Windows.html。
下载安装后,验证是否成功。打开GNUstep->Shell,输入make -v 和 gcc -v命令,如图所示。
下载NDK,地址http://developer.android.com/tools/sdk/ndk/index.html。下载完后解压即可。
配置ndk环境变量,gnustep是模拟linux的环境的,打开gnustep的安装目录下的G:\softinstall\GNUstep\GNUstep\GNUstep.conf文件,添加以下内容:
说明如果不知道ndk目录在linux下应该是在哪里,你可以打开gnustep的命令窗口,输入mount,就可以找到对应的盘符。
验证环境变量,如下图。
以上就配置成功了。
下载进入正题啦。Jni的开发步骤。
打开eclipse,新建工程名为testJni。在activity中添加以下代码 编译后的文件在bin目录下,通过javah命令生成c/c++的文件头。如下图
会在项目目录下生成jni/com_xzw_jni_TestJni.h。
头文件代码如下: 这里我们可以根据头文件编写c代码 接下来编写 Android.mk,该文件可以直接从NDK的samples下的hello-jni的jni文件下直接靠过来改改就可以了。也贴下代码哈。 其中你只需要该LOCAL_MODULE和LOCAL_SRC_FILES就可以了。
说明:LOCAL_MODULE是描述模块的,用来给java调用的模块名,会生成对应的libtestJni.so
LOCAL_SRC_FILES就是源文件啦,多个文件空格隔开即可。
接下来,我们要开始编译生成so文件咯。
打开gnustep的命令窗口,进入到项目底下,输入$NDK/ndk-build命令,即可自动生成libs/armeabi/libtestJni.so文件。
接下来就是java调用了。直接上代码 运行结果如下
以上就是jni的开发步骤了。
在这里我还要补充下:
在我们开发过程中,改一个c/c++的文件,我们都要手动去编译一下有点儿麻烦。这里我们可以使用让eclipse帮助我们自己编译。
右击jni工程的properties-->Builders-->NEW -->;Program 可以看到以下内容:
argument:--login -c "cd /e/myWorkSpace/android/hellJni && $NDK/ndk-build"
切换到Refresh 标签页
切换到Build Options标签页
这样就完成了配置,点击确定可看到控制台自动编译程序了
下载安装后,验证是否成功。打开GNUstep->Shell,输入make -v 和 gcc -v命令,如图所示。
下载NDK,地址http://developer.android.com/tools/sdk/ndk/index.html。下载完后解压即可。
配置ndk环境变量,gnustep是模拟linux的环境的,打开gnustep的安装目录下的G:\softinstall\GNUstep\GNUstep\GNUstep.conf文件,添加以下内容:
说明如果不知道ndk目录在linux下应该是在哪里,你可以打开gnustep的命令窗口,输入mount,就可以找到对应的盘符。
验证环境变量,如下图。
以上就配置成功了。
下载进入正题啦。Jni的开发步骤。
打开eclipse,新建工程名为testJni。在activity中添加以下代码 编译后的文件在bin目录下,通过javah命令生成c/c++的文件头。如下图
会在项目目录下生成jni/com_xzw_jni_TestJni.h。
头文件代码如下: 这里我们可以根据头文件编写c代码 接下来编写 Android.mk,该文件可以直接从NDK的samples下的hello-jni的jni文件下直接靠过来改改就可以了。也贴下代码哈。 其中你只需要该LOCAL_MODULE和LOCAL_SRC_FILES就可以了。
说明:LOCAL_MODULE是描述模块的,用来给java调用的模块名,会生成对应的libtestJni.so
LOCAL_SRC_FILES就是源文件啦,多个文件空格隔开即可。
接下来,我们要开始编译生成so文件咯。
打开gnustep的命令窗口,进入到项目底下,输入$NDK/ndk-build命令,即可自动生成libs/armeabi/libtestJni.so文件。
接下来就是java调用了。直接上代码 运行结果如下
以上就是jni的开发步骤了。
在这里我还要补充下:
在我们开发过程中,改一个c/c++的文件,我们都要手动去编译一下有点儿麻烦。这里我们可以使用让eclipse帮助我们自己编译。
右击jni工程的properties-->Builders-->NEW -->;Program 可以看到以下内容:
argument:--login -c "cd /e/myWorkSpace/android/hellJni && $NDK/ndk-build"
切换到Refresh 标签页
切换到Build Options标签页
这样就完成了配置,点击确定可看到控制台自动编译程序了
1 0
- JNI的开发流程
- Android--JNI的开发流程
- jni的简便开发流程
- Android JNI 开发的流程
- JNI笔记 JNI开发流程
- JNI与NDK的开发流程
- 第八篇:jni的开发流程规范
- JNI和NDK编程(一)JNI的开发流程
- android jni 开发流程
- Android JNI开发流程
- jni开发流程
- JNI开发流程
- JNI开发流程
- android jni开发流程
- JNI开发流程
- jni开发流程
- JNI开发流程
- Android JNI开发流程
- 父结点、子结点、兄弟结点
- HiHoCoder_#1175 : 拓扑排序·二
- javascript 数组 和其他引用类型
- Java系统中JSON的封装
- python 迭代器小结
- JNI的开发流程
- 句法结构分析
- css实现垂直居中
- 利用java定时器Timer实现定时传送数据的任务
- C++类,赋值运算符=重载,以及深拷贝和浅拷贝
- POJ3261 Milk Patterns
- java中类的访问权限介绍
- BestCoder Round #85题解报告
- Leetcode 238. Product of Array Except Self (Medium) (cpp)