protubuf在cocos2dx的应用安装

将protubuf放置在external文件夹

在vs工程里的luacocos2d里新建筛选器protubuf,将pb.c加入到该筛选器下.

将pb.c文件的属性里设置改文件编译为C文件.

将luastruct放置在external的lua下

在vs工程里的luacocos2d里新建筛选器luastruc,将struct.c加入到该筛选器下.

将struct.c文件的属性里设置改文件编译为C文件.

然后在lua_module_rigister.cpp里进行注册.加入以下代码

#ifdef __cplusplus
extern "C" {
#endif
int luaopen_protobuf_c(lua_State *L);
int luaopen_struct(lua_State* L);
#ifdef __cplusplus
}
#endif

在lua_module_register函数里添加

luaopen_protobuf_c(L);
luaopen_struct(L);

至此protubuf就可在windows上运行了.但是Android上还不行.

修改frameworks\cocos2d-x\cocos\scripting\lua-bindings\proj.android下的Android.mk文件

#network
LOCAL_SRC_FILES += ../../../../external/protobuf/pb.c
#luastruct
LOCAL_SRC_FILES += ../../../../external/lua/luastruct/struct.c

至此andriod也可以运行.

在lua中使用则仍需在

lua工程目录下添加protubuf的lua代码.

至此protubuf就可以在lua中使用.

但是如果应用到实战中,仍需使用luasocket或者websocket先读到数据包,再使用protubuf解析出来实际数据.

上一篇:C#实现:给定任意要给字符串,输出所有可能的回文的子字符串集合。


下一篇:屏蔽全部统计代码(51.la cnzz 百度统计 谷歌分析师adsense、屏蔽淘宝客广告代码)的方法