加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Cocos2dx lua 3.10版本绑定cjson流程

发布时间:2020-12-14 17:24:40 所属栏目:百科 来源:网络整理
导读:如题,使用cocos2dx lua自带的json效率很低,接入cjson来处理: 1、找到frameworkscocos2d-xcocosscriptinglua-bindingsmanualnetworklua_extensions.c,修改: #include "lua_extensions.h"#if __cplusplusextern "C" {#endif// socket#include "lua

如题,使用cocos2dx lua自带的json效率很低,接入cjson来处理:


1、找到frameworkscocos2d-xcocosscriptinglua-bindingsmanualnetworklua_extensions.c,修改:

#include "lua_extensions.h"

#if __cplusplus
extern "C" {
#endif
// socket
#include "luasocket/luasocket.h"
#include "luasocket/luasocket_scripts.h"
#include "luasocket/mime.h"
#include "lua/cjson/lua_cjson.h"

static luaL_Reg luax_exts[] = {
    {"socket.core",luaopen_socket_core},{"mime.core",luaopen_mime_core},{"cjson",luaopen_cjson },{NULL,NULL}
};

void luaopen_lua_extensions(lua_State *L)
{
    // load extensions
    luaL_Reg* lib = luax_exts;
    lua_getglobal(L,"package");
    lua_getfield(L,-1,"preload");
    for (; lib->func; lib++)
    {
        lua_pushcfunction(L,lib->func);
        lua_setfield(L,-2,lib->name);
    }
    lua_pop(L,2);

    luaopen_luasocket_scripts(L);
}

#if __cplusplus
} // extern "C"
#endif

2、android打包库里添加: frameworkscocos2d-xcocosscriptinglua-bindingsproj.androidAndroid.mk

          ../../../../external/lua/cjson/strbuf.c 
          ../../../../external/lua/cjson/fpconv.c 
          ../../../../external/lua/cjson/lua_cjson.c 
3、ios平台暂时未处理,待续~~~

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读