Grpc使用
1、简介
gRPC是由Google主导开发的RPC(Remote Procedure Call:远程过程调用协议)框架,使用HTTP/2协议并用ProtoBuf作为序列化工具。为客户端提供Objective-C、Java接口,服务器侧则有Java、Golang、C++等接口,从而为移动端(iOS/Android)到服务器端通讯提供了一种解决方案。
protobuf 序列化解决方案 (消息的数据结构确定后,将数据或对象转换成二进制进行传输)
2、Android集成
顶部添加plugin插件
plugins{
id 'com.google.protobuf'
}
添加protobuf编译器
protobuf {
protoc { artifact = 'com.google.protobuf:protoc:3.12.0' }
plugins {
grpc {
artifact = 'io.grpc:protoc-gen-grpc-java:1.31.1'
}
}
generateProtoTasks {
all().each { task ->
task.builtins {
java { option 'lite' }
}
task.plugins {
grpc {
option 'lite'
}
}
}
}
}
添加dependency依赖
api 'io.grpc:grpc-okhttp:1.44.1'
api 'io.grpc:grpc-protobuf-lite:1.44.1'
api 'io.grpc:grpc-stub:1.44.1'
api 'org.apache.tomcat:annotations-api:6.0.53'
- project的build.gradle文件添加配置
buildscript {
repositories {
google()
jcenter()
}
dependencies {
.....
classpath "com.google.protobuf:protobuf-gradle-plugin:0.8.8"
}
}
<uses-permission android:name="android.permission.INTERNET"/>
(1) 把自己的proto文件复制粘贴到main/proto目录下,点击Android Studio中的Build菜单下的Rebuild Project即可 (2) Java文件生成位置:app/build/generated/source/proto/…… (3) 将Java文件复制出来即可使用
|