【求助】obj-c 如何调用Javascript

已经在javascript写好全局变量,只差不懂怎么在obj-c跑javascript

顶上。。。


https://docs.cocos.com/creator/manual/zh/advanced-topics/oc-reflection.html?h=evalstring
官方文档有写

还有这一篇文档,Objective-C 原生反射机制 · Cocos Creator

好的。想问问那个script.c_str()怎么写
比如我的javascript函数的 testFunc();

#include "cocos/bindings/jswrapper/SeApi.h"
#include "cocos/application/ApplicationManager.h"
#include "base/UTF8.h"
-(void)evalString:(NSString *)_arg1 arg2:(NSString *)_arg2{
    CC_CURRENT_ENGINE()->getScheduler()->performFunctionInCocosThread([=]() {
        std::string funcName = [_arg1 UTF8String];
        std::string param = [_arg2 UTF8String];
        std::string jsCallStr = cc::StringUtils::format("%s('%s');",funcName.c_str(), param.c_str());
        NSLog(@"jsCallStr = %s", jsCallStr.c_str());
        se::ScriptEngine::getInstance()->evalString(jsCallStr.c_str());
    });
}

funcName 是JS层自定义的全局方法

2赞

谢谢,我已经知道怎么做了,刚刚已经解决我的问题了,忘了update这里
你这个方案我会做个记录