简书链接:cannotinitializeaparameteroftypejbooleanakaunsignedchar
文章字数:69,阅读全文大约需要1分钟

cannot initialize a parameter of type ‘jboolean *’ (aka ‘unsigned char *’) with an rvalue of type ‘bool’
错误代码

1
2
3
4
5
6


const char *jstringTocharArray(JNIEnv *env, jstring str) {
return env->GetStringChars(str,false);

}

最新版的jni规范检测牛逼了,出现了一大把错误,查看声明如下

1
2

const char* GetStringUTFChars(jstring string, jboolean* isCopy)

所以要传递的非c的false我找了找语法糖,发现可能是这个,
改成JNI_FALSE之后这个错误消失了。