ProtocolBuffer ObjectiveC配置使用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sinat_25544827/article/details/53464094
  1. 配置环境和安装
    1.1 安装HomeBrew,使用brew -v查看是否安装了HomeBrew,如果未安装 ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 安装。
    1.2 安装ProtocolBuf依赖库,brew install automakebrew install libtool
    1.3 安装protobuf,brew install protobuf
    1.4 (可选)创建符号链接 ln -s /usr/local/Cellar/protobuf/2.6.1/bin/protoc /usr/local/bin
    1.5 clone git git clone https://github.com/alexeyxo/protobuf-objc.git
    1.6 运行 ./scripts/build.sh 来编译

  2. 添加到工程
    2.1 方式1:将/src/runtime/ProtocolBuffers.xcodeproj 作为子工程添加到现有工程中作为依赖
    2.2 方式2:使用CocoaPods pod 'ProtocolBuffers'
    2.3 方式3:可以将clone的工程中/src/runtime/classes 中的源文件导入到需要使用的工程中,如果需要,导入Foundation Framework
    2.4 方式4:将clone的git工程编译,取得.a静态库,结合classes中的.h文件导入到需要使用的工程中。

  3. 编译.proto 文件
    protoc --plugin=/usr/local/bin/protoc-gen-objc person.proto --objc_out="./"

    以上是 person.proto 在当前文件夹的情况下,可以将 .proto 文件拷贝到当前文件夹下,或者通过--proto_path="/path/to/protofile" 指定文件路径。 输出为"./" 也为当前文件夹。
    执行完成后会生成一对.h和.m文件,这是我们需要使用的代码文件。

  4. brew install protobuf 会安装最新版本的protobuf ,导致步骤1.6中的编译失败,因为1.5中clone的工程还未支持最新版本,可以先卸载当前版本,再通过HomeBrew安装指定版本protobuf解决:
    4.1 brew uninstall protobuf
    4.2 brew install homebrew/versions/protobuf260
    4.3 此点可以参考issue: Will you support new protobuf 3.0 ? #21
    4.4 HomeBrew安装指定版本widget

  5. 其他使用方法和信息参阅 GitHub

  6. 按这个方法得到的代码支持ARC,iOS SDK最低支持6.0,如果按 Google官方方法 获得的代码并不支持ARC,需要手动设置为MRC。

  7. 其他参考:
    7.1 ProtocolBuffer for Objective-C 运行环境配置
    7.2 Mac OS下安装ProtocolBuffer与iOS的简单使用

猜你喜欢

转载自blog.csdn.net/sinat_25544827/article/details/53464094