第三方框架
文章平均质量分 61
奋斗的小鹰
记录自己的成长历程
展开
-
Rxjava学习(一)简单分析Rxjava调用流程
无论是看官方文档还是自己打log验证,都会得出以上一二三四五的执行步骤(步骤四会在onError()和onComplete()选其一执行)。当时我的第一感觉先不管设计合不合理,我就想知道它是怎么执行下来的?到此被观察者中发射的onNext()事件流程执行完毕,然后继续看执行四处发射了onComplete()或onError()事件。很明显能发现这是链式调用,链式调用的核心就在于每个方法都返回相同的对象,当先省略掉其中的回调细节,我们可能会看的更清晰...到此,调用到执行五,整个调用流程执行完毕。原创 2022-10-22 21:02:32 · 1230 阅读 · 0 评论 -
EventBus3.0源码分析(四)
这一篇我们来分析一下post()及postSticky()相关的源码,在进入post()方法之前,我们先来了解一个数据结构PostingThreadState,它也是EventBus的一个静态内部类: 并且在EventBus中这个类是和ThreadLocal一起使用的,也就是说在使用中它是线程私有的。 接下来打开post()方法: 继续跟入方法postSingleEvent(): 继续跟入postSingleEventForEventType()方法: 继续跟入postToSub原创 2022-07-06 12:02:08 · 170 阅读 · 0 评论 -
EventBus3.0源码分析(三)
这一篇我们来分析EventBus的register()方法。 紧跟注释2,看他是怎么寻找Subscribe方法的: 接下来进入注释1@findSubscriberMethods处的方法: 这里先留个印象暂不往下分析,在上面findSubscriberMethods方法中的else分支中有一种情况也会调用到findUsingReflectionInSingleClass()方法后面一起看。ok,我们来到注释2@findSubscriberMethods处的方法: 这个方法中反复提到了一个数据结原创 2022-07-05 12:29:39 · 307 阅读 · 0 评论 -
EventBus3.0源码分析(二)
根据上一篇的规划,本篇先分析EventBus使用过程中调用的第一个方法,即: 首先看下ADT生成的类MyEventBusIndex的内容 需要简单提一下的是,ADT在编译期会去解析和处理特定的注解(EventBus中就是@Subscriber),它会扫描出有关这个注解的方法信息,类信息等,拿到所需的信息后生成一些类。ADT的使用这里就不展开了,有兴趣的同学可以看下EventBus中的相关实现,EventBusAnnotationProcessor。......原创 2022-07-04 12:32:56 · 186 阅读 · 0 评论 -
EventBus3.0源码分析(一)两种使用方式
EventBus在3.0及以上版本中加入了以APT(Annotation Processing Tool)实现的方式,但他还是保留了之前反射的实现方式。下面将展示两种实现方式使用上的区别。原创 2022-07-01 17:45:48 · 707 阅读 · 0 评论 -
高效的背后写手:APT
APT(Annotation Processing Tool)原创 2020-01-11 15:02:07 · 158 阅读 · 0 评论 -
Rxjava摘要
线程控制 —— Scheduler 在不指定线程的情况下, RxJava 遵循的是线程不变的原则,即:在哪个线程调用 subscribe(),就在哪个线程生产事件;在哪个线程生产事件,就在哪个线程消费事件。如果需要切换线程,就需要用到 Scheduler (调度器)。线程切换简单地说,subscribeOn() 指定的就是发射事件的线程,observerOn 指定的就是订阅者接收事件的线程。多次...原创 2018-03-27 11:26:33 · 150 阅读 · 0 评论 -
android:在集成友盟Upush是,log中能看到服务器传来的推送消息内容,但通知栏没有消息
在这种情况下,log日志可能提示你,ResClass未初始化,等是因为AndroidManifest中的packname和build.gradle中的applicationId ,不一致导致的,而且要注意的是,每次改动包名后要重新查看 device token,然后配置到...原创 2018-05-21 17:17:39 · 3031 阅读 · 0 评论 -
Android:TagView 云标签item多种颜色设置
TagView是一款很强大的标签库,具体的集成和使用可查看 https://www.jianshu.com/p/34dfcd546501 或: https://github.com/whilu/AndroidTagView 这一篇主要是记录一下我项目中的需求,即:需根据位置或其他规则给item设置不同的颜色 //标签集合 private List<String> t...原创 2018-07-23 16:06:49 · 1536 阅读 · 0 评论