android集成Grpc,使用grpc进行数据交互网络通信

集成
1、首先在project的gradle文件中的dependencies里进行如下配置

classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.10'

2、在app的gradle文件中操作
在最顶部添加

apply plugin: 'com.google.protobuf'

添加protobuf编译器

configurations.all {
    resolutionStrategy.eachDependency { DependencyResolveDetails details ->
        def requested = details.requested
        println "requested = $requested"
        logger.info("mytest", "requested = $requested")
        if (requested.group == 'com.android.support') {
            details.useVersion '28.0.0'
        }
    }
}

protobuf {
    protoc { artifact = 'com.google.protobuf:protoc:3.9.0' }
    plugins {
        javalite { artifact = "com.google.protobuf:protoc-gen-javalite:3.0.0" }
        grpc { artifact = 'io.grpc:protoc-gen-grpc-java:1.22.1' // CURRENT_GRPC_VERSION
        }
    }
    generateProtoTasks {
        all().each { task ->
            task.plugins {
                javalite {}
                grpc { // Options added to --grpc_out
                    option 'lite' }
            }
        }
    }
}

添加grpc的相关引用

implementation 'javax.annotation:javax.annotation-api:1.2'
    implementation 'io.grpc:grpc-okhttp:1.22.1'
    implementation 'io.grpc:grpc-protobuf-lite:1.22.1'
    implementation 'io.grpc:grpc-stub:1.22.1'

ok好了至此已经集成完毕了,接下来就是使用了
proto生成Java文件
(1) 把自己的proto文件复制粘贴到main/proto目录下,点击Android Studio中的Build菜单下的Rebuild Project即可
(2) Java文件生成位置:app/build/generated/source/proto/……
(3) 将Java文件复制出来即可使用

你可能感兴趣的:(android集成Grpc,使用grpc进行数据交互网络通信)