美文网首页
Jni方法签名

Jni方法签名

作者: 辣椒炒蛋我爱吃 | 来源:发表于2021-07-20 13:16 被阅读0次

1、GetFieldID是得到java类中的参数ID,GetMethodID得到java类中方法的ID,它们只能调用类中声明为 public的参数或方法。

举例说明:

  jclass c = (*env)->FindClass(env,"com/camera/webcam/Test");

  jfieldID width_id = (*env)->GetFieldID(env, c, "width", "I");

 第一个参数:JNI接口对象;第二个参数:Java类对象;第三个参数:参数名(或方法名);第四个参数:该参数(或方法)的签名。

2、方法签名

  调用JNI的GetMethodID函数获取一个jmethodID时,需要传入一个方法名称和方法签名,方法名称就是在Java中定义的方法

名,方法签名的格式为:(形参参数类型列表)返回值。

image.png image.png

格式是:(参数列表)返回值 基本数据类型用表上面大写字母表示,数据的话用[表示一维数组,[[表示二维数组,对象类型需要用全限定名前面用L表示是对象用分号结束例如LJava/lang/String;没有返回值写V

举例

void f()->()V 
void f(String)->(LJava/lang/String;)V 
String f(byte[])->([B)LJava/lang/String; 
void f(int,int)->(II)V

相关文章

  • jni生成方法签名

    1、native方法签名生成 编写jni经常写一些jni方法签名是很枯燥,而且经常用错,熟悉语法固然是好事,但有时...

  • Jni方法签名

    1、GetFieldID是得到java类中的参数ID,GetMethodID得到java类中方法的ID,它们只能调...

  • JNI基础(8): JNI调用Java方法

    8.1 JNI调用Java类的成员方法和静态方法 首先需要了解一下java方法在jni中签名格式。简单来说: (参...

  • 1. java的数据类型的签名

    开发jni经常需要在jni层调用java层的方法,或者创建引用,这个时候就需要用到java的属性或者方法的签名,详...

  • JNI方法签名规则

    本文讲解不使用javah命令怎么将.java文件生成相对应的.h文件 首先看看签名表 例子(主要为同名函数的类型签...

  • JNI类型签名和方法签名

    一、基本数据类型 二、引用数据类型 注意:1、引用数据类型则不能直接使用,需要根据JNI函数进行相应的转换后,才能...

  • Java 生成 JNI 头文件

    介绍两个生成jni头文件的方法,一般是用函数签名类型来做native 实现 1. 使用 javac 生成 JNI ...

  • 逆向札记-利用IDA简单过so签名校验

    核心:破解安卓NDK端native方法动态JNI反射的so文件签名校验 分析之前,关于Android的签名机制就略...

  • javap 获取JNI方法签名

    JNI动态注册时需要方法签名,可以自己手写,但是出错的概率比较高,也可以使用javap命令自动生成。找到要获取签名...

  • 2020-04-23 JNI- 调用java 方法

    jni 下调用java 的方法; 1. 获取方法参数的签名 使用 javap -p -s xxx 获取有可能会出现...

网友评论

      本文标题:Jni方法签名

      本文链接:https://www.haomeiwen.com/subject/wzglmltx.html