JNI接口开发
java调用native方法流程主要有两步:1.找到对应的方法a)动态绑定时load本地库时完成映射关系,运行时查找对应方法native方法中实现JNI_OnLoad,返回JNI的版本号;如果native不实现,则由虚拟机生成默认实现。在加载本地库时调用b)静态绑定时,运行时按照特定规则查找对应的方法2.参数转换a)将java参数类型转换为jni提供的类型,包含:基础类型转换为jint,jlong,jboolean,jbyte等类型;String转换为jstring类型;其他内置类型及自定义类型全部转换为jobject;一般情况下,java调用native方法会比正常的函数调用效率低一个数量级,参数越多越复杂,对效率的影响越大。