摘要: 今天花了一天时间研究了下OkHttp3的内部原理,记录在此处以便后期查阅 我们先来看下基本的使用方式: 接下来的分析就以异步执行开始 RealCall的enqueue()方法 线程池 执行AsyncCall 的run方法 ,在父类 NamedRunnable 中 现在我们进入 getResponse 阅读全文
posted @ 2017-02-07 20:26 向着大牛奋斗 阅读(1036) 评论(0) 推荐(0) 编辑
摘要: 1、Sax解析(simple api for xml) 使用流式处理的方式,它并不记录所读内容的相关信息。它是一种以事件为驱动的XML API,解析速度快,占用内存少。使用回调函数来实现。 2、Dom解析 DOM(Document Object Model) 是一种用于XML文档的对象模型,可用于直 阅读全文
posted @ 2017-02-04 22:29 向着大牛奋斗 阅读(9339) 评论(0) 推荐(0) 编辑
摘要: 注意:代码的第10行和第16行 @string/appbar_scrolling_view_behavior 是系统自带的一个Behavior,我们之后再讨论,这边先看一下 app:layout_scrollFlags="scroll" scroll、enterAlways、enterAlwaysC 阅读全文
posted @ 2017-02-03 16:29 向着大牛奋斗 阅读(583) 评论(0) 推荐(0) 编辑
摘要: 收集一下能够避免背压的运算符 sample(500, TimeUnit.MILLISECONDS) 定期收集数据,并发送最后一个 throttleFirst(500,TimeUnit.MILLISECONDS) 定期收集数据,发送第一个数据 debounce(500,TimeUnit.MILLISE 阅读全文
posted @ 2017-01-24 16:39 向着大牛奋斗 阅读(190) 评论(0) 推荐(0) 编辑
摘要: RxJava接触过蛮长时间了,但是让我说个所以然来还是说不出来,归根结底还是还是理解不够深刻,趁着年底这个时候争取写个系列出来给自己的学习做个记录 注意区分RxJava1.0和2.0的区别,以下默认是在2.0的基础上做的测试 先来理解几个概念: 1、Observable : 字面意思可观察的,被观察 阅读全文
posted @ 2017-01-24 14:53 向着大牛奋斗 阅读(1241) 评论(0) 推荐(0) 编辑
摘要: AIDL : Android Interface Define Language(接口定义语言) Service中跨进程间通信利器。。。。 一般都会有Client端和Server端(Server端提供服务) 实现步骤 1、在Server模块 main文件夹下新建一个aidl文件夹,创建AIDL文件接 阅读全文
posted @ 2016-11-10 09:59 向着大牛奋斗 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 1、什么情况下需要使用ContentProvider 跨进程提供数据访问的接口,如果在同一个App下,没有必要使用此种方式 2、自定义ContentProvider AndroidManifest中注册 3、如何访问? 访问需要一个Uri content://com.loo.person/perso 阅读全文
posted @ 2016-11-09 14:28 向着大牛奋斗 阅读(479) 评论(0) 推荐(0) 编辑
摘要: 1、BroadCast注册方式 静态注册:即在AndroidManifest.xml 文件中定义 动态注册: 2、广播的发送方式 普通广播:sendBroadCast(); 有序广播:sendOrderBroadCast(); 根据IntentFilter定义的优先级发送,优先级越高,越先收到广播 阅读全文
posted @ 2016-11-07 13:06 向着大牛奋斗 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 观察者模式面向的需求是:A 对象(观察者)对 B 对象(被观察者)的某种变化高度敏感,需要在 B 变化的一瞬间做出反应。举个例子,新闻里喜闻乐见的警察抓小偷,警察需要在小偷伸手作案的时候实施抓捕。在这个例子里,警察是观察者,小偷是被观察者,警察需要时刻盯着小偷的一举一动,才能保证不会漏过任何瞬间。程 阅读全文
posted @ 2016-11-02 11:02 向着大牛奋斗 阅读(165) 评论(0) 推荐(0) 编辑
摘要: HandlerThread 为什么要使用HandlerThread? 我们经常使用的Handler来处理消息,其中使用Looper来对消息队列进行轮询,并且默认是发生在主线程中,这可能会引起UI线程的卡顿,所以我们用HandlerThread来替代。。。 HanderThread实际上就是一个线程 阅读全文
posted @ 2016-11-01 14:36 向着大牛奋斗 阅读(362) 评论(0) 推荐(0) 编辑