cocos2dx2.1.4FATAL EXCEPTION: GLThread 10, Class doesn't implement Cloneable
错误出现场景:
点击按钮,通过jni方式调用sina android api,logcat错误信息如下
04-19 09:29:06.191: W/dalvikvm(10190): threadid=8: thread exiting with uncaught exception (group=0x4001d888)
04-19 09:29:06.254: E/AndroidRuntime(10190): FATAL EXCEPTION: GLThread 10
04-19 09:29:06.254: E/AndroidRuntime(10190): java.lang.CloneNotSupportedException: Class doesn't implement Cloneable
04-19 09:29:06.254: E/AndroidRuntime(10190): at java.lang.Object.clone(Object.java:79)
04-19 09:29:06.254: E/AndroidRuntime(10190): at org.cocos2dx.lib.Cocos2dxRenderer.nativeTouchesEnd(Native Method)
04-19 09:29:06.254: E/AndroidRuntime(10190): at org.cocos2dx.lib.Cocos2dxRenderer.handleActionUp(Cocos2dxRenderer.java:129)
04-19 09:29:06.254: E/AndroidRuntime(10190): at org.cocos2dx.lib.Cocos2dxGLSurfaceView$9.run(Cocos2dxGLSurfaceView.java:257)
04-19 09:29:06.254: E/AndroidRuntime(10190): at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1295)
04-19 09:29:06.254: E/AndroidRuntime(10190): at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1116)
查找资料后,定位到jni的调用函数
void SinaJni::doLogin()
{
#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)
{
JniMethodInfo mInfo;
//判断是否存在doSinaLogin
bool isHave = JniHelper::getStaticMethodInfo(mInfo,JNI_CALL_CLASS,"doSinaLogin","(Ljava/lang/String;Ljava/lang/String;)V");
if (!isHave)
{
CCLog("doSinaLogin native method does not exist");
}else
{
jstring jAppKey = mInfo.env->NewStringUTF(mAppKey.c_str());
jstring jRedirect_Url = mInfo.env->NewStringUTF(mAppRedirectURI.c_str());
mInfo.env->CallVoidMethod(mInfo.classID,mInfo.methodID,jAppKey,jRedirect_Url);
mInfo.env->DeleteLocalRef(jAppKey);
mInfo.env->DeleteLocalRef(jRedirect_Url);
}
}
#endif
}
修改成:
mInfo.env->CallStaticVoidMethod(mInfo.classID,mInfo.methodID,jAppKey,jRedirect_Url);
问题解决了,喝杯水休息下。今天体检报告出来,中度脂肪肝,it男身体伤不起啊。
分享到:
相关推荐
此代码在cocos2dx2.1.4下面编译有部分错误,我修改后,正常。 下下来后,请在VC++包含目录中链接(F:\cocos2d-x-2.1.4\cocos2dx\platform\win32;F:\cocos2d-x-2.1.4\cocos2dx\platform\third_party\win32\OGLES\GL\;...
《cocos2d-x 2.1.4:探索移动游戏开发的新篇章》 cocos2d-x 是一个跨平台的2D游戏开发框架,它为开发者提供了强大的工具和技术支持,使得游戏开发变得更为便捷。2.1.4 版本是这个框架的一个重要里程碑,它在前一...
【cocos2dx 2.1.4】是Cocos2D-x框架的一个特定版本,这是一个开源的游戏开发库,基于C++,同时提供了多种语言接口,包括Lua和JavaScript。Cocos2D-x允许开发者创建2D游戏、应用程序以及演示程序。在2.1.4版本中,它...
Cocos2dx2.1.4离线API.chm
2.1.4是Cocos2d-x的一个较旧版本,发布于2014年左右,虽然现在最新的版本已经更新到了4.x系列,但有些开发者可能因为特定项目需求或者兼容性问题,仍然需要寻找并使用这个老版本。 Cocos2d-x 2.1.4基于C++,同时也...
《cocos2d-x-2.1.4:探索早期游戏开发引擎的奥秘》 cocos2d-x-2.1.4.zip是一个珍贵的压缩包,它包含了早期版本的cocos2d-x游戏开发引擎的源代码。cocos2d-x是一个广泛使用的开源跨平台2D游戏开发框架,其基于cocos...
Cocos2dx2.2游戏源码:奇怪大冒险,(原作熊同学) 质量很好,骨头使用vs2013和cocos2dx2.2打开即可编译运行,感谢原作者熊同学,文档参考http://blog.csdn.net/iamlazybone 相关笔记
在Cocos2dx 2.x版本中播放MP4格式的视频文件是一项常见的需求,尤其是在开发游戏或者多媒体应用时。Cocos2dx是一个基于C++的游戏开发框架,它提供了丰富的功能来帮助开发者创建2D和3D游戏。在这个场景中,我们将深入...
1. **升级Cocos2dx版本**:最理想的解决方案是将Cocos2dx升级到4.0及以上版本。Cocos2dx团队已经在4.0版本中修复了UIWebView的问题,因此,如果你的项目允许,推荐升级到最新稳定版本。这不仅可以解决UIWebView的弃...
《cocos2d-x 2.1.4:探索移动游戏开发的新篇章》 cocos2d-x 是一个跨平台的2D游戏开发框架,它为开发者提供了强大的工具和技术支持,使得创建移动游戏变得更为简单高效。2.1.4 版本是该框架的一个重要里程碑,它...
《Cocos2dx开源游戏:光线迷宫》是一款基于Cocos2dx引擎开发的迷宫探索游戏,旨在为玩家提供类似iPhone平台上的光线探索体验。这款游戏的亮点在于其开源特性,开发者可以深入研究源代码,学习游戏开发的技术细节,...
Cocos2d-x是一款开源的游戏开发框架,广泛用于创建2D游戏、演示程序和其他图形交互应用。在2.2.6版本中,开发者可以利用Visual Studio 2013进行项目构建和编辑。本教程将深入讲解如何在Cocos2d-x 2.2.6与VS2013环境...
《Cocos2d-x 3.x游戏开发之旅》是一本深度探讨Cocos2dx 3.x框架的游戏开发专著,适合对游戏编程有兴趣并有一定基础的开发者。Cocos2dx是一个开源的游戏开发框架,它基于C++,同时支持多种语言,如Lua和JavaScript,...
《Cocos2dx工具解析:聚焦CocosBuilder》 Cocos2dx是一个广泛使用的开源游戏开发框架,基于C++,支持跨平台的游戏开发,适用于iOS、Android、Windows等多个平台。在Cocos2dx的生态系统中,有一系列强大的辅助工具,...
在Cocos2dx游戏开发中,日志系统是不可或缺的一部分,它帮助开发者追踪程序运行状态,定位和解决潜在的问题。`cocos2dxlog日志生成代码`是针对Cocos2dx框架定制的日志管理系统,旨在提供有组织、有序的日志输出功能...
《基于Cocos2dx的游戏开发实例解析》 Cocos2dx是一个开源的游戏开发框架,它基于C++,并提供对多种编程语言的支持,包括Lua和JavaScript。本实例以"基于cocos2dx的一个小例子"为主题,展示了如何利用Cocos2dx进行...
在iOS开发中,COCOS2DX是一款广泛使用的2D游戏开发框架,它基于C++,为开发者提供了高效的游戏开发工具。本主题聚焦于如何利用COCOS2DX实现线程后台运作以及推送通知功能,特别是在用户按下HOME键后进入后台模式时。...
【标题】"Cocos2dx斗地主服务端与客户端详解" 在游戏开发领域,Cocos2dx是一款广泛使用的开源游戏引擎,它基于C++,并提供了对多种平台的支持,包括iOS。本资源包含了斗地主游戏的服务端和客户端代码,这为我们提供...
在Android项目中嵌入Cocos2dx项目是一个常见的需求,特别是在开发混合式游戏或应用时。Cocos2dx是一款高效的游戏开发框架,它基于C++,同时提供了Java、Objective-C和Swift的接口,使得开发者可以方便地在Android和...
《cocos2dx游戏开发系列之三:源码解析与Android工程构建》 在游戏开发领域,cocos2dx是一个广泛使用的开源游戏引擎,尤其在跨平台开发中扮演着重要角色。本篇将深入探讨cocos2dx游戏开发系列的第三部分——源码...