2023-01-19 357
将我的手机升级到Android 4.03 ICS我的游戏dosent已打开了,它就在设备上没有任何错误混乱了,并且在Eclipse上
04-02 16:55:27.672: E/dalvikvm(26884): JNI ERROR (app bug): attempt to use stale local reference 0x1
04-02 16:55:27.672: E/dalvikvm(26884): VM aborting
我的游戏主要是在Java上写的,但有些部分在C中,这就是我认为
问题是(因为说JNI错误,所以很难弄清楚:))
当然我不知道问题在哪里,所以我不提供任何代码
我没有在Android 2.3
上遇到这个问题
我不知道它是否有帮助,但有时我会遇到此错误
04-02 16:55:26.061: E/Adreno200-ES11(26884): <qglDrvAPI_glTexImage2D:1913>: GL_STACK_UNDERFLOW
虽然Ernest的答案从技术上讲是正确的,在技术上是正确的,在本地陈旧的本地引用了0x1之类的东西, Java VM试图使用不是Java对象作为Java对象的东西.
例如,让我们假设您的JNI函数为:
JNI_EXPORT jboolean foobar(JNIEnv *env, jobject self) {
...
return JNI_TRUE;
}
但是,您错误地将Java对应物声明为public native Boolean foobar()而不是public native boolean foobar().
这是一个简单的错误,因为boolean和Boolean之间的唯一区别是大写.
从foobar返回后,Java VM将对待JNI_TRUE值(0x1),就好像它是指java.lang.Boolean对象一样,这将导致这种致命的错误.
“陈旧的本地参考”错误意味着您要保存对JNI调用之间某些Java对象的本地引用;您需要使用NewGlobalRef方法将该引用转换为全局参考,然后再执行任何可能导致参考持续存在的参考范围之外的参考.
尽管严格来说,这是始终必要的 – 它在JNI规格中 – 仅仅是因为冰淇淋三明治实际上会在Android平台上引起问题.
@ernest和@ilya是正确的.请注意,该问题也以其他方式表现出来,而不仅仅是签名不匹配.我遇到了另一种非常具体的情况,该案例被解释了此处在Android’团队的博客中:
下
错误:错误地假设FindClass()返回全局参考
FindClass()返回本地参考.许多人认为其他情况.在没有类卸载的系统中(例如Android),您可以对待Jfieldid和Jmethodid,就好像它们是全局一样. (它们实际上不是参考,但是在具有类卸载的系统中,存在类似的生命周期问题.)但是JCLASS是参考,FindClass()返回本地参考.常见的错误模式是”静态JCLASS”.除非您将本地引用转换为全局引用,否则您的代码被打破.
基本上,我正在缓存jclass FindClass在全局变量中返回的jclass,但是事实证明该值(从Android 4?)现在是LocalRef.结果,我不得不将其转换为像这样的全球RERF:
jclass jc = env->FindClass(callbacks.name);
// Since Android ICS, class references are not global so we need to peg a
// global reference to the jclass returned by FindClass(), otherwise we get
// following error in the log:
// "JNI ERROR (app bug): attempt to use stale local reference 0xHHHHHHHH".
callbacks._class= static_cast<jclass>(env->NewGlobalRef(jc));
经过大量的头部抓手,这解决了我的问题.
以上所述是小编给大家介绍的Android ICS : 试图使用陈旧的本地引用的JNI错误 0x1,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对77isp云服务器技术网的支持!
原文链接:https://77isp.com/post/25759.html
=========================================
https://77isp.com/ 为 “云服务器技术网” 唯一官方服务平台,请勿相信其他任何渠道。
数据库技术 2022-03-28
网站技术 2022-11-26
网站技术 2023-01-07
网站技术 2022-11-17
Windows相关 2022-02-23
网站技术 2023-01-14
Windows相关 2022-02-16
Windows相关 2022-02-16
Linux相关 2022-02-27
数据库技术 2022-02-20
抠敌 2023年10月23日
嚼餐 2023年10月23日
男忌 2023年10月22日
瓮仆 2023年10月22日
簿偌 2023年10月22日
扫码二维码
获取最新动态