Android JNI GetMethodID中sig参数说明

GetMethodID中sig参数是对函数的签名,也可以说标识,具体的格式为:(函数参数)返回值。

方法签名中用大写的字母对应了java的基本数据类型:

  • Z -> boolean
  • B -> byte
  • C -> char
  • S -> short
  • I -> int
  • J -> long
  • F -> float
  • D -> double
  • V -> void

数组的表示方法,以[为标志,一个[标识一维数组,[[表示二维数组,例如:

  • byte[] -> [B
  • int[][] -> [[I

引用类型的表示方法,需要以L开头,以;结束,中间对应类型的包名加类名,例如:

  • String -> Ljava/lang/String;
  • Object -> Ljava/lang/Object;

自定义类的表示方法,比如包名为jjz.example,类名为JniHandle的表示方法:

  • jjz.example.JniHandle -> Ljjz/example/JniHandle; 
posted @ 2023-01-05 20:33  johnny_zhao  阅读(436)  评论(0编辑  收藏  举报