前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >xUtils3同步方法getSync(),postSync()使用

xUtils3同步方法getSync(),postSync()使用

作者头像
木溪bo
发布2018-12-27 10:07:30
1.2K0
发布2018-12-27 10:07:30
举报

现在Android前端开发,流行的开发框架是RxJava2+Retrofit2+OKHttp模式。当然既然大流如此,当然有它的过人之处,用过后我个人感觉确实牛逼,小见解:线程切换方便,个人定制化,自定义容易多了,尤其是RxJava2较与RxJava还添加了背压这个理念。推荐不错一个RxJava2.0简书系列,作者新颖的“水管”讲述方式着实厉害,入门容易多了。

各自的职责:Retrofit 负责请求的数据和请求的结果,使用接口的方式呈现;OkHttp 负责请求的过程;RxJava 负责异步,各种线程之间的切换。

我当前维护了一个小项目一直用的xUtils2.6的版本,想着更新维护一下,就想到了现在比较不错的3.0版本xUtils3(xUtils3Git地址),该框架封装的还是比较完善的,具体操作的使用方法详情看https://blog.csdn.net/tyk9999tyk/article/details/53306035,我呢就是代码的搬运工,哈哈。但是有一点是他们都没具体说明同步的怎么使用,我也是在这里遇到了问题,我们都知道网络连接这种耗时操作在安卓中最好事在子线程中进行。我刚开始把xUtils3的Get请求放在了主线程中,死活接收不到回传数据,究其原因目前未知,只得操作与子线程,测试ok成功。

代码语言:javascript
复制
get方式
   new Thread(new Runnable() {
            @Override
            public void run() {
                //同步必须在子线程中进行
                RequestParams params = new RequestParams("https://api.douban.com/v2/movie/in_theaters");
               // 默认缓存存活时间, 单位:毫秒(如果服务器没有返回有效的max-age或Expires则参考)
                JSONObject  jsonObject;
                try {
                    jsonObject = x.http().getSync(params, JSONObject.class);
                } catch (Throwable throwable) {
                    throwable.printStackTrace();
                }
            }
        }).start();
代码语言:javascript
复制
post方式
   new Thread(new Runnable() {
            @Override
            public void run() {
                //同步必须在子线程中进行
                RequestParams params = new RequestParams("https://api.douban.com/v2/movie/in_theaters");
               // 默认缓存存活时间, 单位:毫秒(如果服务器没有返回有效的max-age或Expires则参考)
                JSONObject jsonObject;
                try {
                    jsonObject = x.http().postSync(params, JSONObject.class);
                } catch (Throwable throwable) {
                    throwable.printStackTrace();
                }
            }
        }).start();

以上纯属个人见解,在此记录一下,如有失误,请谅解,毕竟萌新一枚!!!欢迎修正

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.11.05 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档