(转)[ActionScript 3] Google-ProtoBuf for AS
2014-06-19 23:02
323 查看
最近由于项目的需要,研究了一下protobuf。在这里分享一下经验,具体介绍网上也有不少,可以百度先了解一下。
ProtoBuf在as中主要就是序列反序列化的作用,我们主要用它来代替amf,因为像c++这类语言不支持amf。
1.AS有两种方案,一种是官方的,还是一种是国人写的。这里先介绍官方的。
首先介绍一下proto文件,这个文件主要用来定义描述文件,作用是生成前后台两种类,这样可以省去一边的工作,语法比较简单,这里就不介绍。
2.把proto文件生成as文件,这里需要编译器proto.exe,默认支持c++,java,python.我们得自己安装vs来编译产生支持as的编译器,具体过程就不再描述,可以看protobuf-actionscript3中的说明。可以点击这里下载我已经编译好的程序。
下面介绍编译过程,使用cmd命令
protoc.exe –proto_path= c:\ –as3_out=c:\ options.proto
参数说明
–proto_path proto文件的目录
–as3_out 输出目录
最后跟proto文件名,在输出目录下产生类文件。
protoc.exe –proto_path= c:\ –as3_out=c:\ options.proto
参数说明
–proto_path proto文件的目录
–as3_out 输出目录
最后跟proto文件名,在输出目录下产生类文件。只要将类文件拷贝到项目里边就可以使用了,记得导入 <ignore_js_op>
protoc.rar (198.2 KB, 下载次数: 861)
3.使用方法,导入swc文件.
var byte:ByteArray=new ByteArray;
message.writeToDataOutput(byte);//序列化到byte中;
var msg:Msg=new Msg;
msg.readFromDataOutput(byte);//反序列化message.
使用ProtoBuf后可以跟c++等语言直接传输对象,而不必关心内部的细节,使开发更为方便。我封装了一套socket的类库,可以直接下载来使用。
<ignore_js_op>
NetEngine.rar (514.52 KB, 下载次数: 927)
国人写的那套as的方案protoc-gen-as3具体没有深入研究,区别只是它的编译方式是使用插件方式,所以不用自己再编译编译器,使用官方的就行了。具体看它里面的帮助,其它地方应该大同小异。
ProtoBuf在as中主要就是序列反序列化的作用,我们主要用它来代替amf,因为像c++这类语言不支持amf。
1.AS有两种方案,一种是官方的,还是一种是国人写的。这里先介绍官方的。
首先介绍一下proto文件,这个文件主要用来定义描述文件,作用是生成前后台两种类,这样可以省去一边的工作,语法比较简单,这里就不介绍。
2.把proto文件生成as文件,这里需要编译器proto.exe,默认支持c++,java,python.我们得自己安装vs来编译产生支持as的编译器,具体过程就不再描述,可以看protobuf-actionscript3中的说明。可以点击这里下载我已经编译好的程序。
下面介绍编译过程,使用cmd命令
protoc.exe –proto_path= c:\ –as3_out=c:\ options.proto
参数说明
–proto_path proto文件的目录
–as3_out 输出目录
最后跟proto文件名,在输出目录下产生类文件。
protoc.exe –proto_path= c:\ –as3_out=c:\ options.proto
参数说明
–proto_path proto文件的目录
–as3_out 输出目录
最后跟proto文件名,在输出目录下产生类文件。只要将类文件拷贝到项目里边就可以使用了,记得导入 <ignore_js_op>
protoc.rar (198.2 KB, 下载次数: 861)
3.使用方法,导入swc文件.
var byte:ByteArray=new ByteArray;
message.writeToDataOutput(byte);//序列化到byte中;
var msg:Msg=new Msg;
msg.readFromDataOutput(byte);//反序列化message.
使用ProtoBuf后可以跟c++等语言直接传输对象,而不必关心内部的细节,使开发更为方便。我封装了一套socket的类库,可以直接下载来使用。
<ignore_js_op>
NetEngine.rar (514.52 KB, 下载次数: 927)
国人写的那套as的方案protoc-gen-as3具体没有深入研究,区别只是它的编译方式是使用插件方式,所以不用自己再编译编译器,使用官方的就行了。具体看它里面的帮助,其它地方应该大同小异。
相关文章推荐
- 出现错误:ERROR: no such package '@protobuf//src/google/protobuf': Could not find handler for bind rule /
- protobuf for lua
- 【caffe学习笔记】python caffe报错:No module named google.protobuf.internal
- libprotobuf ERROR google/protobuf/wire_format.cc:1059
- ImportError: No module named cv2,No module named google.protobuf.internal等
- Protobuf3 google protobuf
- Google 的开源技术protobuf 简介与例子 .
- google-protobuf-text_format.h
- 交叉编译 google protobuf
- Google protobuf的安装及使用
- protobuf for iOS 64位
- 运用google-protobuf的IM消息应用开发(前端篇)
- Google 的开源技术protobuf 简介与例子
- google protobuf 简单实例
- google/protobuf hello world
- java.lang.IllegalAccessError: class com.google.protobuf.HBaseZeroCopyByteString
- google protobuf 在Linux下安装与使用 (亲自测了一下, 确定可用!)
- [转载] google ProtoBuf开发者指南
- protobuf for lua in Mac