Android-Kotlin中如何从单元获取字符串
我使用Okhttp3 GET方法到Web服务
val client= OkHttpClient() fun login_Chk(id:String,pw:String) { val req=Request.Builder() .url("https://www.hxxxxxx.com/WebService.asmx/Login_Check?ID=${id}&PW=${pw}") .build() client.newCall(req).enqueue(object : Callback{ override fun onFailure(call: Call, e: IOException) {} override fun onResponse(call: Call, res: Response) { println(res.body()?.string().toString()) return } }) }
我想检查web服务返回其“成功”或“失败”
下面我的Logcat android/bKfiHsgc_o.png
在C#中我们可以使用像
if(webservice(ID,PW) =="Success") { ...... }
但在科特林,我不知道该怎么做。 谢谢
你不能像这样的异步方法返回。 另外一个单位方法不会返回任何东西
您需要将Callback对象从方法传递给客户端
fun login_Chk(id:String,pw:String, cb:Callback) {
然后在身体里做这个
client.newCall(req).enqueue(cb);
无论您在哪里调用login_Chk
,都可以定义回调onResponse
,里面有onResponse
,这是数据“返回”到调用方法的地方
你还需要一个XML解析器。 你不能这样做== "Success"