cocos2dx 3.8.1 lua集成protobuf

目前lua集成protobuf主要有兩種方式git

1. protobuf-gen-lua方案github

https://github.com/sean-lin/protoc-gen-lua  參照說明便可集成json

這個方案是將proto文件導出成lua文件, 使用起來稍微麻煩,  不能直接建立lua table,  而是要用生成lua pb文件中指定格式的table來生成二進制,  一樣服務器返回的二進制數據也是反序列化成生成lua pb文件中指定格式的table。 對數組的操做與lua原生方式不同, 沒有良好的打印日誌功能, 須要本身編寫, 若是本身封裝框架會很彆扭, 由於要編寫系列方法來處理lua table和lua pb中的table的轉換和對應關係數組

 

2. 雲風pbc方案服務器

https://github.com/cloudwu/pbc框架

這個方案處理的很乾淨利落  相似與json.decode json.encode  能夠直接把lua table生成二進制和直接從二進制反序列化成lua table,   所以log功能 框架封裝都處理起來很順手加密

這個方案提供了tolua封裝lua

須要注意的是,pb文件是proto編譯生成的,暴露在資源路徑下,須要本身進行加密,不然真成了裸奔了日誌

啓動時須要註冊protobuf文件code

local buffer = cc.FileUtils:getInstance():getStringFromFile(" XXX.pb")

protobuf.register(buffer)

相關文章
相關標籤/搜索