- 博客(11)
- 资源 (6)
- 收藏
- 关注
原创 Android之IntentService完全解析
我们先不扯IntentService是什么什么的,扯那么东西都太空洞,不如看源码来的深刻IntentService源码 public abstract class IntentService extends Service { private volatile Looper mServiceLooper; private volatile ServiceHandle
2016-10-14 22:26:48 360
原创 Android消息机制Handler的原理详解
Handler的作用 大家都知道,Handler是用来做子线程和UI线程之间的通信的,在子线程进行耗时的操作,然后通过Handler将消息传递到主线程中进行UI操作。大家有没有一个疑问,为什么不能在子线程更新UI?这是因为ViewRootImpl对UI操作做了验证 void checkThread(){ if(mThread!=Thread.curr
2016-10-08 15:17:39 878
原创 Retrofit2.0详解(一简单使用)
几个月前,对Retrofit进行了一个系统的学习,不过没有做一个整理和总结,正好国庆没什么事就写几篇博客对Retrofit的简单使用,上传下载进度监听,封装使用,源码解析做一个学习,记录如下1~简单使用 由于retrofit2.0与先前版本的差别还是比较大,对于不同版本之间的差异在这里就不在进行详细区别。下面的例子也是针对于retrofit2.0进行介绍的。retro
2016-10-07 11:30:34 2889
原创 Okio的使用和源码解析
一.java NIO和堵塞I/O的区别 1.阻塞I/O通信模型: 阻塞I/O在调用InputStream.read()方法时是阻塞的,它会一直等到数据到来时才会返回 2.java NIO原理及通信模型 Java NIO是在jdk1.4开始使用的,是一种非阻塞式的I/O java NIO的工作原理: (1)Jav
2016-10-07 10:05:53 3542
原创 RxJava学习(四利用RxJava打造自己的RxBus)
前面说过Rxjava的功能很强大,不仅仅是实现链式的异步操作,它的功能很强大还可以通过RxBus实现EventBus的消息/事件传递功能,我们来看看RxBuspackage com.example.liujian.rxjavademo;import java.util.HashMap;import rx.Observable;import rx.Subscriptio
2016-10-06 16:01:46 1474
原创 Rxjava学习(三线程调度器Scheduler)
我们知道,RxJava最主要的特点就是异步操作,它的异步操作就是用Scheduler来指定Observable和Subscriber所运行的线程,在默认情况下,即在不指定线程的情况下,RxJava遵循的是线程不变的原则,即:在哪个线程生产事件,就在哪个线程消费事件Schedulers线程调度器我们来看一下Schedulers的分类:(1)Schedulers.i
2016-10-06 15:35:54 515
原创 Rxjava学习(二操作符)
上一篇说道我们可以利用操作符对Observable发出的消息进行拦截和修改,Rxjava的操作符很多,这里只介绍几种常用的filter filter()操作符是可以对Observable流程的数据进行一层过滤处理,返回一个新的Observable,filter()返回为false的值将不会发出到Subscriber,我们来看下具体的代码 Observable.just("2
2016-10-06 15:24:01 290
原创 Rxjava学习(一基础篇)
一.Rxjava跟EventBus的 RxJava 是一个响应式编程框架,通过一种扩展的观察者设计模式来实现异步操作。 跟AsyncTask和Handler类似,但是比AsyncTask和Handler更加简洁随着程序逻辑变得越来越复杂,它依然能够保持逻辑的简洁。另外还可以自己封装一个RxBus进行消息事件的传递,有人可能会问这些功能EventBus也能够做,那么为什么还需要Rx
2016-10-05 23:25:47 621
原创 EventBus3.0的使用详解
学习一种技术我们先得了解下为什么要学习,它的优点是什么。 对于EventBus的话,我想作用大概有如下两点:代替Thread+Handler的线程间通信方式和代替回调,EventBus主要用来做消息/事件的传递,可以代替传Intent,Handler,Broadcast或接口函数在Fragment,Activity,Service,线程之间传递消息,开销更小,代码更加简洁易懂,其实主要作用
2016-10-05 22:13:59 383
转载 Android DataBinding(MVVM设计模式)
在网上找了很多MVVM的技术博客,大多讲的云里雾里不知所云,但是发现这一篇讲的还不错,适合入门,转载一下什么是MVVM说到DataBinding,就有必要先提起MVVM设计模式。Model–View–ViewModel(MVVM) 是一个软件架构设计模式,相比MVVM,大家对MVC或MVP可能会更加熟悉。MVC:(VIew-Model-Controller)早期
2016-10-03 19:06:44 826
自定义HorizontalScrollView
2016-01-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人