因公司app新版本需要使用protobuf来封装数据,学习了一下怎么用。
大概流程如下:
①配置环境:参考ProtocolBuffer for Objective-C 运行环境配置及使用 - 简书
1)如果没有brew,先装brew;
ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”
2)安装automake、libtool、protobuf
brew install automake
brew install libtool
brew install protobuf
3)下载protobuf (注意下载的路径)
git clone https://github.com/alexeyxo/protobuf-objc.git
4)编译protobuf (cd到下载好的protobuf-objc目录下)
./scripts/build.sh
②根据接口字段编写.proto文件
使用终端命令:touch ***.proto 创建文件,内容参考:(***为你的文件名)
③生成对应的 ***.pb.h 和 ***.pb.m 文件
使用终端命令:protoc --plugin=/usr/local/bin/protoc-gen-objc ***.proto --objc_out="./"
④打开你的工程,把 ***.pb.h 和 ***.pb.m 文件copy到工程中
⑤创建###Builder对象,设置好字段对应的参数(###为你的.proto中的message,如例子中的Gen_trend)
⑥调用###Builder的build方法,生成###对象
⑦调用###对象的data方法,将请求参数序列化,生成二进制数据