c++代码通过JNI调用Java代码时用到的签名信息如何获取
来源:互联网 发布:手机淘宝怎么注册不了 编辑:程序博客网 时间:2024/05/16 05:20
大家都知道,如果在c++里通过JNI的方式调用Java代码时,需要用到java类和类成员方法的签名信息。但是这些签名信息的可读性确实太差了,如果要自己人工来根据Java类或者类成员方法来写这些签名信息那确实是一件非常痛苦的事情。那有办法能简单地得到这些Java类和成员方法的签名信息吗?有的,下面我就介绍下如何获取签名信息。
1、编译Java代码,生成中间代码class文件
2、在cmd中切换到目标class文件所在目录
3、执行命令javap-s -p 类名,如javap-s -p Test即可得到Test类即它的成员方法的签名信息如下:
publicfinal class com.my.android.Test extends java.lang.Object{
......
}
4、获取Java类名信息的时候,就可以根据步骤3中显示的Test类的签名信息,通过“com/my/android/Test”来FindClass Test
jclass class_Test = env->FindClass("com/my/android/Test");
5、通过GetMethodID获取类的成员函数与步骤4类似,拿到步骤3中显示的类成员函数的签名信息调用GetMethodID就可以了。
0 0
- c++代码通过JNI调用Java代码时用到的签名信息如何获取
- android中如何通过jni调用c,c++代码
- cocos2d-x 中多线程的c/c++代码通过JNI调用java代码
- cocos2d-x 中多线程的c/c++代码通过JNI调用java代码
- cocos2d-x 中多线程的c/c++代码通过JNI调用java代码
- cocos2d-x 中多线程的c/c++代码通过JNI调用java代码
- 用Android Studio通过Java代码调用C代码的JNI流程
- Java 通过JNI调用C或者CPP代码
- Java 通过JNI调用C或者CPP代码
- 使用Qt / C + +通过JNI调用Java代码
- win7下java通过JNI调用C代码
- 通过基站信息(LAC,CID)调用google的json接口获取地理位置信息的Java代码
- java通过JNI调用c++代码
- java通过JNI调用c++代码
- Java 通过 Jni 调用 C++代码
- C++ 通过 JNI 调用 Java 代码
- [JNI] C++如何调用Java代码
- 使用JNI,让java调用c代码
- 关于Java多线程实现生产者和消费者的问题
- hive两大表关联优化试验
- Python正则表达式
- Textview底部文字被遮挡问题
- CM添加kafka服务后出现错误
- c++代码通过JNI调用Java代码时用到的签名信息如何获取
- 数值分析课实验-求解线性方程组的直接法C代码
- Oracle Sequence
- html中让背景完全填充容器
- Content-Type为null报 'mediatype' must not be empty错
- php 经典面试题及答案
- Token
- 加载地图,加载shp文件和鹰眼图功能
- Swift学习第二枪