美文网首页
xUtils3同步方法getSync(),postSync()使

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

作者: 木溪bo | 来源:发表于2018-11-05 09:34 被阅读149次

现在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成功。

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();
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();

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

相关文章

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

    现在Android前端开发,流行的开发框架是RxJava2+Retrofit2+OKHttp模式。当然既然大流如此...

  • Android 学习记录

    一、XUtils3基本使用方法 http://www.androidchina.net/4177.html

  • js中 !==和 !=的区别

    在使用var result = this.$storage.getSync('versionText');时,发现...

  • Android 集成框架xUtils3(它的数据库很亮)

    膜拜大神:https://github.com/wyouflf/xUtils3 妈咪妈咪哄 xUtils3简介 x...

  • promise async await

    promise async await 使异步方法像同步方法那样返回值:异步方法不会立即返回最终的值,而是返回一个...

  • 微信小程序

    总结目前遇到的坑 1.在onLoad里 得用getStorageSync 同步方法获取缓存 再setData (使...

  • java同步线程(二)

    java同步线程(二) 同步方法: 使用synchronized关键字来修饰某个方法,则该方法称为同步方法。同步方...

  • 高并发编程基础

    1.同步方法锁定的是锁对应的其它同步方法,不影响调用非同步方法或其它锁对应的同步方法。 2.同步方法只能保证当前方...

  • 多线程之线程同步

    同步的方法: 1.Java 同步关键字(synchronized) 实例方法实例方法同步是同步在拥有该方法的对象上...

  • 释放锁的三种情况

    1.执行完同步方法或同步代码块 2.在同步方法或同步代码块中调用wait方法 3.在同步方法或同步代码块中发生异常...

网友评论

      本文标题:xUtils3同步方法getSync(),postSync()使

      本文链接:https://www.haomeiwen.com/subject/vsujxqtx.html