我是在native这样定义的函数
// 登录状态
enum class IOSFacebookLoginState : int {
FB_LOGIN_SUCCESS = 0,
FB_LOGIN_CANCELLED = 1,
FB_LOGIN_FAILED = 2,
FB_LOGIN_AUTH_FAILED = 3,
FB_LOGIN_ALREADY_LOGIN = 4
};
void logInWithReadPermissions(std::vector<std::string> permissions, std::function<void(FacebookType::IOSFacebookLoginState, std::string)> cb);
但生成的jsb绑定代码会把IOSFacebookLoginState的类型判断错误(我就只拷贝一小段了):
auto lambda = [=](FacebookType::IOSFacebookLoginState larg0, std::basic_string<char> larg1) -> void {
se::ScriptEngine::getInstance()->clearException();
se::AutoHandleScope hs;
CC_UNUSED bool ok = true;
se::ValueArray args;
args.resize(2);
ok &= native_ptr_to_seval<FacebookType::IOSFacebookLoginState>((FacebookType::IOSFacebookLoginState)larg0, &args[0]);
ok &= std_string_to_seval(larg1, &args[1]);
se::Value rval;
se::Object* thisObj = jsThis.isObject() ? jsThis.toObject() : nullptr;
se::Object* funcObj = jsFunc.toObject();
bool succeed = funcObj->call(args, thisObj, &rval);
if (!succeed) {
se::ScriptEngine::getInstance()->clearException();
}
};
还是说我哪里忽略了什么配置之类的?求教大神。