美文网首页
iOS中使用Protocol Buffer

iOS中使用Protocol Buffer

作者: piggybear | 来源:发表于2020-03-23 18:46 被阅读0次

搭建环境

文中使用的是protobuf-3.11.4

  1. 下载代码:https://github.com/google/protobuf/releases

  2. 编译

./configure
make
make check
sudo make install
sudo ldconfig # refresh shared library cache.

检查是否安装成功

protoc --version

如果成功你将会看到libprotoc 3.11.4

编写.proto文件

按照官方标准语法https://developers.google.com/protocol-buffers/ 编写通用代码

例如新建一个Person.proto

touch Person.proto

Person.proto文件

syntax = "proto3"; //指定版本 

message Person {
  string name = 1;
  int32 uid = 2;
  string email = 3;
}

生成.h .m文件

protoc *.proto --objc_out=.

iOS集成protobuf

pod 'Protobuf'

序列化/反序列化

#import "Person.pbobjc.h"

Person *persion = [Person new];
persion.name = @"张三";
persion.email = @"123@gmail.com";
persion.uid = 123;
//序列化
NSData *data = [persion data];
NSLog(@"data %@", data);

//反序列化
Person *persion2 = [Person parseFromData:data error:nil];
NSLog(@"name = %@", persion2.name);
NSLog(@"email = %@", persion2.email);
NSLog(@"id = %d", persion2.uid);

相关文章

网友评论

      本文标题:iOS中使用Protocol Buffer

      本文链接:https://www.haomeiwen.com/subject/uzwwyhtx.html