Search code examples
okhttpgrpc-java

Does gRPC support TLS 1.3 under Android?


In an Android App, using the latest release of io.grpc:grpc-okhttp:1.32.1, I cannot seem to make a TLS 1.3 connection to a server. The definition of ConnectionSpec.MODERN_TLS is being referenced from okhttp-2.7.4, which does not include TLS 1.3. I see that okhttp3 has the desired definition of ConnectionSpec.MODERN_TLS, but OKHttpChannelBuilder won't take that class reference.

Is there a way to create a gRPC ManagedChannel supporting TLS 1.3?


Solution

  • Resolved> As of io.grpc version 1.43.2, there is a different method for building the Channel, with the TLS version and cipher suites as parameters. Using this, I was able to create a TLS 1.3 connection.

    ((OkHttpChannelBuilder) channelBuilder).tlsConnectionSpec(tlsVersions, cipherSuites);