小编gg-*_*-05的帖子

在协程中使用 OkHTTPClient() 总是会抛出警告“调用了不适当的阻塞方法”

在协程中调用 OkHTTP 客户端的正确方法是什么?

CoroutineScope(IO).launch {
                        val request = Request.Builder()
                            .url("${host}/dots")
                            .build()

                        val client = OkHttpClient()
                        client.newCall(request).enqueue(object: Callback{
                            override fun onFailure(call: Call, e: IOException) {
                                isConnected.postValue(false)
                            }

                            override fun onResponse(call: Call, response: Response) {
                                val loadingStr = response.body()?.string().toString()
                                loadingStrings = loadingStr
                                Log.i("My_Error",loadingStrings)
                            }

                        })
                    }
Run Code Online (Sandbox Code Playgroud)

在 onResponse 中,loadingStr 变量显示 string() 警告,说明调用了不适当的阻塞方法。请告诉我正确的方法来做同样的事情。

android kotlin okhttp kotlin-coroutines

6
推荐指数
1
解决办法
3264
查看次数

标签 统计

android ×1

kotlin ×1

kotlin-coroutines ×1

okhttp ×1