protobuf
在android还推荐一种使用方式为protobuf-lite
,使用protobuf gradle plugin
在
构建时生成代码的方式来使用protobuf
。
Protobuf的使用上问题,可以参考 Protobuf在Android下的使用说明。
添加protobuf-gradle-plugin
在项目根目录下的build.gradle
文件中修改为如下代码:
1 2 3 4 5 6 7 8 9 10
| buildscript { repositories { jcenter() mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:2.3.0' classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.3' } }
|
引用protobuf-gradle-plugin
在application的项目下build.gradle
文件修改为如下代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| apply plugin: 'com.google.protobuf'
...
protobuf { protoc { artifact = 'com.google.protobuf:protoc:3.2.0' } plugins { javalite { artifact = 'com.google.protobuf:protoc-gen-javalite:3.0.0' } } generateProtoTasks { all()*.plugins { javalite { } } } }
dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.google.protobuf:protobuf-java:3.2.0' }
|
执行android studio
的Build > Rebuild Project
后。在app/build/generated/source/proto
下会生成相应的protobuf java代码。
程序样例:
https://github.com/itvincent-git/protobuf-sample/tree/gradleplugin