集成Protobuf到Android项目中的步骤如下
- 在
Project的build.gradle下加入protobuf插件
classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.12'
- 在
module的build.gradle下添加配置
apply plugin: 'com.google.protobuf'
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| android { ... sourceSets { main { java { srcDirs 'src/main/java' } proto { srcDirs 'src/main/proto' } } } } protobuf { protoc { artifact = 'com.google.protobuf:protoc:3.0.0' }
generateProtoTasks { all().each { task -> task.builtins { remove java } task.builtins { java {} } } } } dependencies { ... api 'com.google.protobuf:protobuf-java:3.0.0' }
|
3.make项目完成
XXPB.pb文件结构
1 2 3 4 5 6 7 8 9 10 11 12
| syntax = "proto3"; option java_package = "com.xxx.xx.proto"; option java_multiple_files = true; option optimize_for = LITE_RUNTIME;
package XXPB;
message UserId { int64 lUid = 1; string sVersion = 2; }
|
注:记得protobuf的生成类不要混淆