cocos2d-x于android在call to OpenGL ES API with no current context
2015-10-18 18:28
591 查看
一、问题:
正在使用JNI离Java(Android)侧 打回来C++(Cocos2d-x)该函数返回消息。Cocos2d-x花掉了看看 Eclipse的Log中。显示 有 call to OpenGL ES API with no current context (logged once per thread) 的错误
二、解决方式:
经过查找资料了解到这个问题是由于Android在启动cocos2d-x的Thread时,没实用context的主的Thread,而是使用的OpenGL的Thread。所以我们不能在主Thread去完毕 本应该是在cocos2dx中OpenGL Thread中 完毕的工作(即所调用的函数在Cocos2dx中做的工作)
必须使用OpenGL的Thread去完毕︰
Java(Android)側-Cocos2dxActivity.java
应该在Cocos2dxActivty的这个Activity用runOnGLThread去完毕相应的工作
public static native void nativeCallback(String code, String params);
public static void runNativeCallback(final String code, final String params)
{
Cocos2dxGLSurfaceView.getInstance().queueEvent(new Runnable() {
@Override
public void run() {
nativeCallback(code, params);
}
});
}
相关文章推荐
- cocos2d clipboard
- 在cocos2d-x中使用libcurl实现上传文件功能(quick版)
- [Cocos2d塔防游戏开发]Cocos2dx-3.X完成塔防游戏《王国保卫战》--敌人(一)
- 小小菜之Cocos2d-x游戏开发旅程——项目实例:2048(5)
- cocos2d-x跨平台游戏开发视频教程(一)
- Cocos2d-x 3.1 修改程序名、图标和屏幕方向
- cocos2dx 3.6版本 初学者遇到的问题
- Cocos2d-x 游戏开发 - 代码与CocosBuilder绑定
- 小小菜之Cocos2d-x游戏开发旅程——项目实例:2048(4)
- win平台下搭建cocos2dx 3.5 lua开发环 4000 境
- Cocostudio工具创建工程,因没有字体资源导致在vs中编译时,出现中文乱码现象
- xcode7中使用cocos2d-x3.8的webview控件
- cocos2d-x Vector的使用
- cocos2d-x游戏得分显示
- cocos2d-x Loadingbar的使用
- cocos2d-x moveTo的使用
- Cocos2d-x能够实现的效果总结
- Cocos2d-x实现用户触摸的功能
- cocos2d从零开始
- Cocos2d-x 3.2 Lua演示样本 ActionTest(操作测试)