iOS中使用Protocol Buffer

搭建环境

文中使用的是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);
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容