JNI里如果定义了一个返回值为jboolean型的函数,那么java端用Boolean是不行的,要用boolean才行
/**
* 初始化seetaface人脸识别库
* 参数:
* vFaceModelDir:人脸识别模型文件所在目录,如/sdcard/
*/
JNIEXPORT jboolean JNICALL Java_seetaface_SeetaFace_init(
JNIEnv *env, jobject obj, jstring vFaceModelDir)
{
jboolean tRet = false;
if(NULL == vFaceModelDir) {
return tRet;
}
...
tRet = true;
return tRet;
}
像这样就不行,运行的时候直接就 报【很抱歉,"xxx"已停止运行】
//初始化so库,告诉底层人脸识别模型文件的目录
public native Boolean init(String vModelDir);
//初始化so库,告诉底层人脸识别模型文件的目录
public native boolean init(String vModelDir);