iOS Protocol Buffers的简单使用

Protocol Buffers(通常简称为protobuf)是Google公司开发的一种数据描述语言,它能够将结构化数据序列化,可用于数据存储、通信协议等方面。这种序列化格式很灵活、高效、自动化,不依赖于语言和平台并且可扩展性极强。使用protobuf时,您只需将数据结构定义一次(使用.proto文件定义),便可以使用特别生成的源代码轻松地使用不同的数据流完成对这些结构数据的读写操作,即使使用不同的语言(protobuf的跨语言支持特性)。您甚至可以更新数据结构的定义(就是更新.proto文件内容),而不会破坏依赖“老”格式编译出来的程序。

在Mac上安装protoc(Protocol Buffers编译器),你可以按照以下步骤操作:

1、打开终端。

2、检查是否安装Homebrew:

brew -v

已安装结果:

Homebrew 4.3.23

未安装结果:

-bash: brew: command not found

如果未安装,执行一下命令安装:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

3、Homebrew安装成功后,执行以下命令安装protoc:

brew install protobuf

完成后验证是否安装成功:

protoc --version

结果:

libprotoc 28.1

4、github上相关资源:https://github.com/protocolbuffers/protobuf

​​​​​​​5、桌面新建文件夹 protoBuf, 使用Xcode新建文件命名为person.proto,或者复制empty.proto到该文件夹内,重命名为person.proto,定义结构:proto3语法

syntax = "proto3";

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

  enum PhoneType {
    MOBILE = 0;
    HOME = 1;
    WORK = 2;
  }

  message PhoneNumber {
    string number = 1;
    PhoneType type = 2;
  }
}

6、终端执行命令,cd 到文件夹protoBuf:

cd /Users/Name/Desktop/protoBuf

7、执行以下命令生成pb文件:

protoc ./person.proto --objc_out=./

8、把生成的.h和.m文件添加到项目中就可以使用了。

需要注意的是,如果编译报错,文件不支持ARC的,需要在Compile Sources中,找到Person.pbobjc.m,添加-fno-objc-arc,关闭文件的ARC.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值