简介:
Protobuf是一种数据交换格式,可以用于诸如网络传输、配置文件、数据存储等。我是在项目中socket通讯用到的Protobuf。使用Protobuf大致分三步:
1.集成protoc工具
2.根据自己的需求创建proto文件并转换
3.向自己的项目集成protocbuf
一、集成protoc环境
1.下载protoc项目
2.生成protoc编译器
cd到下载目录,终端依次执行以下命令
./autogen.sh
./configure
make
sudo make install
objectivec/DevTools/full_mac_build.sh
成功后在src文件夹下会有个protoc文件
二、使用protoc转换文件
1.根据需求新建后缀为proto的文件,例: auth.proto
2.转换
protoc --proto_path=路径1--objc_out=路径2 XXXX.proto
路径1 : 创建的proto文件所在目录
路径2 : 转换后的文件输出路径
XXXX.proto : 创建的proto文件名称
例:
在桌面创建放proto文件的文件夹 "MySrc", 在 "MySrc" 里创建proto文件auth.proto, 在桌面创建放转换后的文件的文件夹 "MyGen", 则在终端
先cd 到桌面
protoc --proto_path=MySrc --objc_out=MyGen MySrc/auth.proto
执行命令后会发现在 "MyGen" 文件夹中出现 Auth.pbobjc.h / Auth.pbobjc.m, 这两个就是我们项目中需要的文件。
三.向项目集成protobuf
1.下载Demo
2.将demo里的objectivec文件夹复制到自己的项目(文件路径:GPBTest/PB/objectivec)
3.向项目加入ProtocolBuffers_iOS.xcodeproj子项目
点击xCode左下角加号,
选择刚才复制的objectivec文件夹里的ProtocolBuffers_iOS.xcodeproj