2.4.11(12) performFunctionInCocosThread 不执行

  • Creator 版本: 2.4.11,2.4.12
  • 目标平台: iOS/ 模拟器
    Xcode版本:12.1
    Mac版本:10.15.7 (19H15)
    模拟器版本:iPhone12 Pro 14.1

问题:

在AppController和RootViewController里边分别调用下面的代码,始终进不不去,执行不了evalstring,请问是不是必须用cocos creator 3.x版本才行呢?

#import “cocos/scripting/js-bindings/jswrapper/SeApi.h”
#include “base/CCScheduler.h”
#include “base/CCThreadPool.h”
#include “platform/CCApplication.h”
NSString *script =@“node=cc.find(‘Canvas/sceneLayer’);node.getComponent(‘game’).player8();”;
const char *script_=[script UTF8String];
cocos2d::Application::getInstance()->getScheduler()->performFunctionInCocosThread(={
se::ScriptEngine::getInstance()->evalString(script_);
});

请问有大牛帮忙看看吗?

难道必须用下面这种方式?

还是说cocos creator 2.11(12)导出的ios项目不支持反射机制,但是我为什么可以从js 调用 oc的代码呢?

调用全局对象方法,或者全局函数