为什么在JNI_Onload中调用Java方法会失败,但是在之后的函数中调用同样对方法就不会失败???

JNI的一些问题 和解决方案

这就没有问题,很奇怪

JNI的一些问题 和解决方案

推测:

JNI_OnLoad加载在java代码加载完成之前,所以在JNI_OnLoad中调用java端方法的时候,Activity还没有启动,获取不到context

 

解决:

在调用Java端非静态方法的时候要调用该方法获取一个jobject对象
jobject j_object = env->NewGlobalRef(obj);

上面的问题应该是object实例获取的问题

相关文章: