无法解析TLS数据包头android studio

ham*_*mid 3 kotlin retrofit okhttp

我想连接我的本地服务器并使用Retrofit获取一些数据,但我给出了错误“无法解析 TLS 数据包标头”,并且我无法解决此问题,请给我一个解决方案

onFailure:无法解析 TLS 数据包标头

ServiceBuilder.kt

object ServiceBuilder {
    private val client = OkHttpClient.Builder()
        .connectionSpecs(listOf(ConnectionSpec.MODERN_TLS) )
        .build()

    private val retrofit = Retrofit.Builder()
        .baseUrl(Config().BASE_URL)# "https://10.0.2.2:5000"
        .addConverterFactory(GsonConverterFactory.create())
        .client(client)
        .build()

    fun<T> buildService(service: Class<T>): T{
        Security.insertProviderAt(Conscrypt.newProvider(), 1);
        return retrofit.create(service)
    }
}
Run Code Online (Sandbox Code Playgroud)

LinesrsEndpoint.kt

interface LinesrsEndpoint{
    @GET("/getAllLinesrs")
    fun getLinesrs(): Call<AllLinesrs>
}
Run Code Online (Sandbox Code Playgroud)

线路Rs.kt

data class AllLinesrs(val results:List<Linesrs>)

data class Linesrs(
    var lineId: Int,
    var symbolId: String,
    var lineStart: String,
    var lineEnd: String,
    var lineTimeFrame: String,
    var lineInsertTime: String,
    var lineSensDgre: String,
    var linesrsGroupId: String,
    var userId: String,
    var user: User

)
Run Code Online (Sandbox Code Playgroud)

MainActivity.kt

class MainActivity: AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_add_trend_line)

        val request = ServiceBuilder.buildService(LinesrsEndpoint::class.java)
        val call = request.getLinesrs()

        call.enqueue(object : Callback<AllLinesrs> {
            override fun onResponse(call: Call<AllLinesrs>, response: Response<AllLinesrs>) {
                if (response.isSuccessful) {
                    Log.e("hamid", "onResponse: "+response.body() )
                }
            }

            override fun onFailure(call: Call<AllLinesrs>, t: Throwable) {
                Log.e("hamid", "onFailure: " + t.message)
            }
        })
    }

}
Run Code Online (Sandbox Code Playgroud)

小智 19

试试这个:将基本 URL 从https更改为http

  • 如果我更改为http,另一个错误显示... (2认同)