之前项目集成过swift版的pb(protocol-buffers的简称).
这次,简要说明下集成objective-c版的正确步骤,节省大家时间
首先,pod中加入这个框架,这个框架才是应该使用的,网上其他的说法,说导入编译后的包,非常麻烦,其实就是这个.
pod 'Protobuf', '~> 3.1.0'
然后pod更新即可
(注意网上有很多使用pod 'ProtocolBuffers', '~> 1.9.9.2'这个框架的,这个框架并不是google写的,而且目前不维护,导致objective-c是无法编译成功的.swfit版的用这个比较合适,目前没有报错.笔者直接用的是google的框架)
然后,只需要把后台给我们的.proto文件转为oc文件即可.这个过程借助 brew来安装这个代码转换工具,在命令行工具一次输入下列代码.
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install automake
brew install libtool
brew install protobuf
这时候就可以把自己的.proto文件使用如下命令行转为.h和.m文件了,代码如下
protoc --objc_out=./ user.proto
如果想批量转换文件夹下的pb,则可以使用命令
protoc --objc_out=./ *proto
把转换好的文件拖入工程,编译报错.这个时候只需要把.m文件改为非arc的即可,给编译代码.m加入标记 -fno-objc-arc.