ProtocolBuf Swift 使用
环境搭建
Mac安装swift-protobuf
1
| brew install swift-protobuf
|
使用Podfile集成Xcode
再Podfile里添加
然后在此目录下打开terminal运行
使用
新建BookInfo.proto
1 2 3 4 5 6 7
| syntax = "proto3";
message BookInfo { int64 id = 1; string title = 2; string author = 3; }
|
在此文件同目录下执行下面命令,生成.swift文件
1
| protoc --swift_out=. BookInfo.proto
|
将.swift文件拖入工程,编译一下,使用
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| // Create a BookInfo object and populate it: var info = BookInfo() info.id = 1734 info.title = "Really Interesting Book" info.author = "Jane Smith"
do { // Serialize to binary protobuf format: let binaryData: Data = try info.serializedData()
// Deserialize a received Data object from `binaryData` let decodedInfo = try BookInfo(serializedData: binaryData)
// Serialize to JSON format as a Data object let jsonData: Data = try info.jsonUTF8Data()
// Deserialize from JSON format from `jsonData` let receivedFromJSON = try BookInfo(jsonUTF8Data: jsonData) } catch { print(error) }
|