一、准备资料
1、官方地址:https://github.com/google/protobuf/releases (下载protoc-3.2.0-win32.zip 用来编译protoc->.java文件)
2、jar包下载:由于官方没有给出jar包,我这边直接采用别人已经编译好的jar包:
下载地址:http://files.cnblogs.com/files/feijian/protobuf-java-3.2.0_jar.rar
或者自己编译生成看教程:http://www.cnblogs.com/learn21cn/p/6213372.html
二、编译消息体文件
--
找到下载好的protoc-3.2.0-win32.zip,解压缩,cmd进入bin目录:
用记事本新建一个文件:msg.proto (注意proto2和proto3的语法是不一样的)
语法说明见:http://blog.csdn.net/lyjshen/article/details/52298003
syntax = "proto3";
package msginfo; //包名,在编译的时候会生成对应的文件夹
message Message
{
enum Humour {
UNKNOWN = 0;
PUNS = 1;
SLAPSTICK = 2;
BILL_BAILEY = 3;
}
required string name = 1;
Humour hilarity = 2;
uint32 height_in_cm = 3;
bytes data = 4;
int64 result_count = 7;
bool true_scotsman = 8;
float score = 9;
repeated uint64 key = 5[packed = true];
}
message MessageArray
{
map<string, Message> msg_map = 1;
}
然后通过cmd命令编译,做法如下:
1、cmd命令,进入刚才的protoc-3.2.0-win32.zip解压缩的bin目录
2、将msg.proto拷贝到bin目录,新建一个java文件
3、cmd执行命令(注意有几个空格):
\protoc-3.2.0-win32\bin>protoc --java_out=./java./ msg.proto
4、找到bin目录下的java文件夹,下面会有生成的编译文件,将编译好的文件Msg.java拷贝到Android studio项目目录。
5、再把下载好的jar包也拷贝到工程的libs目录,通过project structure ->app->dependencies 添加jar包依赖
6、rebuild工程即可
网友评论