android studio ProtoBuf导入(附序列化与反序列化)windows版本

因要使用protobuf来通信所以就加呗,没想到还挺麻烦的,弄了一下午,网上一堆乱七八糟的教程,最后就找到一个靠谱的,但是写的不够详细,我就想来写一个适合新手的!是windows版哦!

首先呢,要去https://github.com/google/protobuf/releases去下载2个东西protobuf-java-3.5.1.zip 和protoc-3.5.1-win32.zip,可以下载最新版的,然后都解压到一个文件夹里;

android studio ProtoBuf导入(附序列化与反序列化)windows版本android studio ProtoBuf导入(附序列化与反序列化)windows版本android studio ProtoBuf导入(附序列化与反序列化)windows版本

然后再下载这个图第一个的那个东西 地址是 http://maven.apache.org/download.cgi

android studio ProtoBuf导入(附序列化与反序列化)windows版本

下载完同样解压出来,然后要配置环境变量哦

android studio ProtoBuf导入(附序列化与反序列化)windows版本

我的地址是F:\ProtobufTest\apache-maven-3.5.2-bin\apache-maven-3.5.2\bin   请自行修改别忘了;

然后cmd打开命令窗口 输入: mvn -version   显示成下面的就代表安装成功啦!

android studio ProtoBuf导入(附序列化与反序列化)windows版本

然后把protoc-3.5.1-win32\bin下面的protoc.exe 如下图:

android studio ProtoBuf导入(附序列化与反序列化)windows版本

复制到protobuf-java-3.5.1\protobuf-3.5.1\src这个目录下,如下图:

android studio ProtoBuf导入(附序列化与反序列化)windows版本


这个时候呢要再次打开CMD进入protobuf-java-3.5.0/java/      输入命令:   mvn package       也可以直接进入此文件夹中按住shift+鼠标右键选择在此处打开命令窗口再输入命令,然后要等待一会,我是等待了大约10分钟左右,最终出现了成功的窗口 如图:

android studio ProtoBuf导入(附序列化与反序列化)windows版本

生成的文件在protobuf-java-3.5.1\protobuf-3.5.1\java\core\target 中,我的叫protobuf-java-3.5.1.jar  如图:

android studio ProtoBuf导入(附序列化与反序列化)windows版本

好啦~这个jar包就是我们想要的东西了,把它放到你工程的libs下面就可以了,别忘了让工程添加依赖!

好了,下面就可以把proto变成JAVA文件了!随便写了一个proto 如下图:

android studio ProtoBuf导入(附序列化与反序列化)windows版本

然后运行命令 
protoc.exe --java_out=F:\protoout ss.proto     F:\protoout是要输入到的目录,ss.proto是protobuf的文件

android studio ProtoBuf导入(附序列化与反序列化)windows版本

好了,现在去F:\protoout看一下吧!

android studio ProtoBuf导入(附序列化与反序列化)windows版本

已经成功输出了!然后把这个文件放入工程里吧,要跟上面proto里包的目录一致!

测试一下,把数据序列化一下!

android studio ProtoBuf导入(附序列化与反序列化)windows版本

然后再反序列化输出一下,我这里就用toast输出啦~

android studio ProtoBuf导入(附序列化与反序列化)windows版本

看一下效果,如图:

android studio ProtoBuf导入(附序列化与反序列化)windows版本

好啦~到此就可以使用protobuf了!!!