CallStaticObjectMethod 返回空指针的问题

月亮518 2016-11-21 11:47:40
下载网上的一份cocos2dx源码编译,在手机上运行老是闪退,发现以下函数的
jobj = minfo.env->CallStaticObjectMethod(minfo.classID, minfo.methodID); 返回jobj值为0,导致外层函数用到空指针。

有大侠知道下面的代码有什么问题吗?先谢谢了~~

代码如下:
#include "JniHelper.h"
#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)
//////////////////////////////////////////////////////////////////////////
using namespace std;

bool getJniMethod(jobject& jobj, JniMethodInfo &minfo, const char* sFunction, const char* sSignature)
{
#define JNI_PACKAGE "com/io/game/JniCaller"
//getStaticMethodInfo,判断Java静态函数是否存在,并且把信息保存到minfo里
//参数1:JniMethodInfo
//参数2:Java类包名+类名
//参数3:Java函数名称
//参数4:函数参数类型和返回值类型
if (!JniHelper::getStaticMethodInfo(minfo,JNI_PACKAGE,"shared","()L" JNI_PACKAGE ";"))
return false;

//这里的调用getInstance,返回Test类的对象。
jobj = minfo.env->CallStaticObjectMethod(minfo.classID, minfo.methodID);
return JniHelper::getMethodInfo(minfo,JNI_PACKAGE,sFunction,sSignature);
}
...全文
542 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
SSHorSSM 2016-12-01
  • 打赏
  • 举报
回复
朋友,你去游戏开发版区发吧,估计这里没人帮你解决,这是属于JAVA的
萧乡月夜 2016-12-01
  • 打赏
  • 举报
回复
cocos2d-x是c++的开发库,这里是java版区,兄弟你发错地方了
月亮518 2016-12-01
  • 打赏
  • 举报
回复
没人吗 自己顶一下。。。。

62,628

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧