• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

第五节cocos2dx的jni部分

mysql 搞代码 4年前 (2022-01-09) 17次浏览 已收录 0个评论

继续上文分析,这节来分析cocos2dx 的jni 部分: 目录为: cocos2d-x-2.1.4\cocos2dx\platform\android\jni DPIJni.cpp DPIJni.h IMEJni.cpp IMEJni.h Java_org_cocos2dx_lib_Cocos2dxAccelerometer.cpp Java_org_cocos2dx_lib_Cocos2dxBitmap.cpp Java_org_c

继续上文分析,这节来分析cocos2dx 的jni 部分:
目录为:
cocos2d-x-2.1.4\cocos2dx\platform\android\jni
DPIJni.cpp
DPIJni.h
IMEJni.cpp
IMEJni.h
Java_org_cocos2dx_lib_Cocos2dxAccelerometer.cpp
Java_org_cocos2dx_lib_Cocos2dx本文来源gaodaimacom搞#^代%!码&网(Bitmap.cpp
Java_org_cocos2dx_lib_Cocos2dxBitmap.h
Java_org_cocos2dx_lib_Cocos2dxHelper.cpp
Java_org_cocos2dx_lib_Cocos2dxHelper.h
Java_org_cocos2dx_lib_Cocos2dxRenderer.cpp
JniHelper.cpp
JniHelper.h

TouchesJni.cpp

DPIJni.cpp
获取屏幕DPI 的一个接口。
IMEJni.cpp
获取上层的输入设备,是否打开和关闭输入键盘
Java_org_cocos2dx_lib_Cocos2dxAccelerometer.cpp
单向java 调用,传递给c++,pDirector->getAccelerometer()->update(x, y, z, timeStamp);
Java_org_cocos2dx_lib_Cocos2dxBitmap.cpp
创建位图使用
Java_org_cocos2dx_lib_Cocos2dxHelper.cpp
帮助类,双向,java 调用c++ 和c++调用java
Java_org_cocos2dx_lib_Cocos2dxRenderer.cpp
渲染器,单向,java 传递给c++
JniHelper.cpp
协助类,帮助接口
TouchesJni.cpp 触屏消息传递过程

参照一个为:
JNIEXPORT void JNICALL
Java_org_cocos2dx_lib_Cocos2dxRenderer_nativeTouchesBegin(JNIEnv * env, jobject thiz, jint id,
jfloat x, jfloat y) {
cocos2d::CCDirector::sharedDirector()->getOpenGLView()->handleTouchesBegin(1,

&id, &x, &y);
}
传递给cocos2d-x-2.1.4\cocos2dx\platform\android CCEGLView.cpp 里面,这个类继承了
CCEGLViewProtocol,这个里面可以看到处理过程
void CCEGLViewProtocol::handleTouchesBegin(int num, int ids[], float xs[], float ys[])
这个过程就完成了。
这里CCDirector.cpp 里面设置了触屏解析器
m_pobOpenGLView->setTouchDelegate(m_pTouchDispatcher);
随后CCEGLViewProtocol::handleTouchesBegin 里面调用的
m_pDelegate->touchesBegan(&set, NULL);
便会走到这里。
这一节还是讲解JNI 的本地代码与JAVA 代码之间的沟通过程,只有理解了这些概念,才能在
随后的开发过程游刃有余。

这一节就到这里,分析完毕。


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:第五节cocos2dx的jni部分
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址