在onCreate()方法中的代码如下:
kHttpClient mOkHttpClient = new OkHttpClient();
RequestBody mRequestBody = new FormBody.Builder().add("imei",imei).build();
Request mRequest = new Request.Builder().post(mRequestBody).url(url).build();
mOkHttpClient.newCall(mRequest).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
e.printStackTrace();
}
@Override
public void onResponse(Call call, Response response) throws IOException {
if (response.code() == 404){
Log.d(logTag,"请求缺少IMEI参数");
}
else if (response.code() == 405){
Message message = new Message();
message.what = 3;
handler.sendMessage(message);
}else if (response.body().string() == "IMEIForbidden"){
Message message = new Message();
message.what = 4;
handler.sendMessage(message);
}
String version = response.body().string();
}
});
我想要的逻辑是这样的:
从一个URL接口中获取一个String值(上述代码中的version),获取到version值后再去调用下一个接口。
在安卓中网络请求得开线程,所以就用了okhttp的enqueue方法,可是在这个方法中获取到的response值,怎么传递到UI线程中呢,并且让UI线程的代码等待获取到这个值才继续执行
白板的微信
Smart猫小萌
相关分类