Posted on 2012-04-26 19:35
luofeng 阅读(452)
评论(0) 编辑 收藏 引用 所属分类:
Android基础
JNI技术的出现主要是基于三个方面的应用需求:
1. 解决性能问题
2. 解决本机平台接口调用问题
3. 嵌入式开发应用
生成头文件
可以用javah命令来自动生成JNI的头文件,这样可以省事很多的,进入命令行,切换到项目的bin目录下,执行命令:
javah -classpath . -jni 包.类名
命令执行完以后会在bin目录下面生成一.h头文件,然后将该.h头文件拷贝到你要编写的C/C++目录下面去吧。
方法签名
使用JNI在native内调用java方法时,需要知道java方法的方法签名,利用javap工具可以方便的生成签名。由于java方法签名在jni层的表示方法的复杂性,利用这个工具生成签名信息可以避免人工分析带来的错误。
javap -s -p -classpath . 类名
-s表示打印签名信息
-p表示打印所有函数和成员的签名信息,默认只打印public的签名信息。
注意:
粗体部分是.class文件的文件名,不要.class后缀,
必备资料:
jni手册