一、JNI基本数据类型字符对应
"()V" "(II)V" "(Ljava/lang/String;Ljava/lang/String;)V"
()中的字符表示参数,后面的则代表返回值
"()V"就代表 void func()
"(II)V" 表示 void func(int,int)
上述是单字符的表示,下面来看下数组的表示方法
数组是以"["开始用两个字符表示 如:
[I jintArray int[]
[F jfloatArray float[]
以此类推。
二、对象类型的对应方法
对象类型的参数是以“L”开头以“;”结尾,中间部分用“/”隔开的包及类名。而其对应的C函数名的参数则为jobject,一个例外是String类,其对应的类是jstring,即:
Ljava/lang/String中的String jstring;
Ljava/net/Socket中的Socket jobject
如果Java函数位于一个嵌入类,则使用$作为类名间的分隔符.例如:
"(Ljava/lang/String;Landroid/os/FileUtils$FileStatus;)Z"