MY Blog

Thinking will not overcome fear but action will.

RxJava代码组织

从源码角度分析其成员的关系

前言 本篇文章基于Rxjava1.3.8版本源码解析 上篇文章 我们介绍了RxJava的成员类和各个类承担的作用 本篇文章 我们主要来阐述类之间的联系 是如何组合在一起 形成整个事件流的生产和消费 通过理清这些能让我们更好的理解这个库所带的思想-也就是基于事件的调度方式 正文 在阐述开始前让我们看下下列代码 class RxFunction{ publi...

RxJava解析

从源码角度分析该库成员及其作用

前言 本篇文章基于Rxjava1.3.8版本源码解析 说起RxJava 在Android开发者眼里 他是一个基于事件流的异步库 相比于其他的异步库例如AsyncTask等 优势在于对逻辑的整理 将功能作为事件流发送 事件流具有可转换,过滤,整合的特性 并且可被观测 保证最终接收到的为处理完毕的数据 这里准备后续用几篇文章 来阐述自身对RxJava这个库的理解 主要介绍涉及的类和...

  我的计算机体系

For Better Skill

前言 最近看了Hencoder的文章 讲了一些中小企业中的开发者想进步却不知途径 往往过早的就出现了职业天花板 所谓根基决定成就就是这样吧 对于这点我也颇有感触 因为是或多或少的偏向计算机的专业,科班基础对我之前来说还是比较匮乏的 我也因此花了不少时间补习四门大课,之后看代码就明亮许多 讲这些呢主要是为了阐述一个命题–技能基础 我们这一行就称为为计算机基础,我更愿意理解为计算机体系 就...

  我的计算机体系

For Better Skill

前言 最近看了Hencoder的文章 讲了一些中小企业中的开发者想进步却不知途径 往往过早的就出现了职业天花板 所谓根基决定成就就是这样吧 对于这点我也颇有感触 因为是或多或少的偏向计算机的专业,科班基础对我之前来说还是比较匮乏的 我也因此花了不少时间补习四门大课,之后看代码就明亮许多 讲这些呢主要是为了阐述一个命题–技能基础 我们这一行就称为为计算机基础,我更愿意理解为计算机体系 就...

  View机制解析

  源码解析

我们之前分析Window机制时已经清楚的理解了我们设置的View 就是DecorView的mContentParent下的View树 起点 WindowManagerGlobal DecorView通过 WindowManager添加view到window显示与用户交互 而ViewRootImpl 是用来连接 WindowManager 和 DecorView 的桥梁 在...

基于Socket长连接的推送实现

支持心跳包检测

原理 Socket连接是封装与TCP协议的一种连接形式,可以在C/S两端建立起双向传输管道pipe使得可以进行流传输,是一种长连接机制 推送作为一个具有一定市场的APP是非常需要的,实现推送也有非常多的形式 这里我们讨论使用socket来实现App推送,从上面的socket介绍来看 他符合作为推送所需要的几个要素:实时,信息交互,轻量快捷 本实例主要是通过在JAVAEE后端建立服务器...

     AndroidPackage机制

  From Common Situation

三大部分:1.打包成apk 2.apk安装 3.打开图标进入Activity间发生了什么 Package->SignedApk android打包分为两部分-代码和资源 ApplicationResource->CompiledResource 通过AAPT工具进行资源文件(包括AndroidManifest.xml、布局文件、各种xml资源等)的打包,生成R.j...

深入理解Context

  一直见面却不熟悉的陌生人

Android应用模型是基于组件的应用设计模式,组件的运行要有一个完整的Android工程环境,在这个环境下,Activity、Service等系统组件才能够正常工作 Context的源码注释说明 Context提供了关于应用环境全局信息的接口,它是一个抽象类,它的执行为Android系统所提供 它允许获取以应用为特征的资源和类型,是一个统领一些资源(应用程序环境变量等)的上下...

   Window机制解析

  从源码开始

Activity下的奥秘 首先我们得这知道 每个Activity下持有着单独的window对象,是他在感知用户的触摸事件并反馈给activity 但window只是规定功能规范的抽象类 真正的实现类为PhoneWindow 他将感知的事件发送给Activity处理 window因为是比较核心的代码有着非常重要的功能,android为其创建了一个管理接口WindowManager,真正实...

Android事件传递

  源码解析

以native为终点的源码分析 Android中点击事件的来源 - 如何从硬件->Activity 先来看下这张图 引导 事件首先产生是在Activity,那么又是谁将事件传给activity 核心的代码是mWindow.setCallback(this); 是PhoneWindow传的 接着我们就继续深入 源头-ViewRootImpl 首先,点击事件是由用...