JNI(Java Native Interface)java本地接口
它使JAVA程序能和其他语言的程序和库进行交互
Linux下ndk的环境配置
用vi打开~/.bashrc配置文件
在配置文件中添加环境变量ANDROID_NDK_ROOT=ndk目录
在环境变量PATH下追加ANDROID_NDK_ROOT
在export后追加ANDROID_NDK_ROOT
ndk的开发步骤
1.将android工程建立在ndk的目录下==>方便在终端执行ndk命令
2.在android工程中创建一个类,存放有native关键字的方法
3.在终端下,用命令“javah -classpath . 类全名”生成ndk的头文==>类是第二步中定义的类;而且终端的路径要定位了android工程的斌目录下
4.在android工程的根目录下创建jni文件夹,将在bin目录下生成的jni头文件移动到jni文件夹中
5.根据头文件完成相应的.c文件
6.编写“Android.mk”文件(确定生成的库名,源文件,日志头文件)==>在.mk中不能使用//注释
7.用命令“ndk-build”命令生成库文件==>终端的目录定位到android工程的根目录
8.在eclipse中刷新工程==>必做
9.运行程序==>在apk中会添加一个C的库文件
在.c文件中完成log日志
1.需要include<android/log.h>
2.在要输出的地方使用__android_log_print(消息级别由char *tag参数决定);==>可变参数型的参数表
3.在.mk文件中添加LOCAL_LDLIBS:=-llog ==>调用log库
在.c文件中可以定义宏,简化第二步-->可变参数在宏中用__VA_ARGS__表示