JNI简便开发流程
1、 创建一个Android项目
2、 在Java代码中声明native方法,并调用System.loadLibrary()方法
3、 右击项目-->Android Tools-->Add Native Support...,如下:
这时会报如下错误:
说的是NDK的位置无效,这是因为我们没有指定,点击Eclipse的菜单Window/Preferences,并设置如下:
再次执行刚刚的命令,执行后如下:
这里起的名字一定要和前面调用System.loadLibrary中的保持一致,点击上对话框中的“Finish”按钮,这个时候项目中会自动生成jni文件,如下:
4、 把hello.cpp的扩展名改变hello.c,Android.mk中的内容对应也需要修改
5、 使用javah生成native方法对应的C头文件,然后把方法签名复制到hello.c文件中,如下:
6、 从上图我们看到报错了,这是因为Eclipse已经进入了C/C++的透视图,应用了CDT插件,报错是因为找不到jni.h在哪里,右击项目-->Properties-->C/C++ General-->Paths and Symbols-->Add...-->File syatem...-->选择jni.h所在的目录,如下:
点击OK之后会弹出一个对话框,点“Yes“即可。这个时候之前hello.c中报错的地方就不报错了,而且敲C代码的时候有提示,如下:
7、 写好c代码直接直接运行项目,这个时候会发现控制台中有编译ndk的log,如下:
这是先自动编译ndk,然后再打包apk运行。也可以点击工具栏上的按钮手动编译,如下: