quick-cocos2d-x protobuf

一、下載pbc項目 https://github.com/miaodadao/pbc ios

二、proto生成pb文件 git

https://code.google.com/p/protobuf/downloads/list 下載protoc文件,而後切換到上面下載完成後解壓的文件下調用下面安裝命令github

 ./configure --prefix=/usr/local/protobuf數據結構

 make app

 make check ui

 make install google

安裝完成後在存放proto的文件下調用lua

protoc -- descriptor_set_out test.pb iosgame.pb iosgame.protospa

把生成好的pb文件放到項目的res文件下code

三、修改pbc項目

添加pbc-lua.h頭文件,文件內容

#ifndef __LUA_PBC_EXTRA_H_

#define __LUA_PBC_EXTRA_H_

#if defined(_USRDLL)

    #define LUA_EXTENSIONS_DLL     __declspec(dllexport)

#else         /* use a DLL library */

    #define LUA_EXTENSIONS_DLL

#endif

#if __cplusplus

extern "C" {

#endif

#include "lauxlib.h"

int LUA_EXTENSIONS_DLL luaopen_protobuf_c(lua_State *L);

    

#if __cplusplus

}

#endif

#endif

修改pbc項目中 binding\lua\pbc-lua.c 文件,添加#include "pbc-lua.h",把pbc裏面的文件添加到quick的項目裏面

在quick項目裏面Build Settings Header Search Paths 添加"$(QUICK_COCOS2DX_ROOT)/lib/pbc"

在Appdelegate裏面添加

#include "pbc-lua.h"頭文件

在 bool AppDelegate::applicationDidFinishLaunching()裏面添加luaopen_protobuf_c(L);


四、讀取數據

require("protobuf")

local iosgame = CCFileUtils:sharedFileUtils():getFileData("iosgame.pb")//數據結構

    protobuf.register(iosgame)

    local stringBuf = CCFileUtils:sharedFileUtils():getFileData("test.game")//須要的數據

    result = protobuf.decode("mygame.CMaindata",stringBuf )

    result就是咱們須要的結果

相關文章
相關標籤/搜索