怎样才能在UI线程中等待okhttp返回结果才进行下一步
在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线程的代码等待获取到这个值才继续执行
相关阅读:
mysql怎么修改约束啊
android谁要反馈源码啊?
使用 MPDF 将HTML转为PDF,然后将该PDF转为PNG图片的时候,中文报错... ...
rails里有像Django这样的模板继承吗?该怎么使用
Windows 为什么占用很多内存?
文章一键发布多家平台
为什么des加密后输出乱码?
我用blob存储的字符串,那读取的时候php怎么转化为字符串呢?
请问有没有用dva框架做的react的demo啊?
java自己写的工具类异常如何处理?
这种圆角应该怎么样算的
laravel5 模板变量不能解析
为什么我的grpc proto文件是这样的?
angularJS 中的ng-include路径里面可以放变量吗?为什么我写的不行?请帮忙看看!
java连接本机的sqlserver2008出现错误
这个vue.js的下拉选择框能否优化一下?
有没有兼容的js调用安卓、ios的拍照、录像、录音接口?
vueJS中watch的item值拿不到老数据
调用函数的时候加不加* 有什么区别?
JAVA通过LDAP做用户登录认证,怎么做业务的异常处理?