240 发简信
IP属地:北京
  • 120
    抓包工具Fiddler-使用教程

    下载就不说了百度自行解决 启动Fiddler,打开菜单栏中的 Tools > Fiddler Options,打开“Fiddler Options”对话框。 在Fiddler...

  • View加载和绘制

    [TOC] Activity的相关生命周期 ActivityThread中: r是ActivityClientRecord对象,每个activity启动前会创建一个,用于保存...

  • 定义双链表,实现扑克三带二发牌排序

    [TOC] 结果展示 双链表实现 理解 LinkedList就是双链表, 实现了List接口和Deque接口,Deque提供了双链表特性 ArrayList 内部维护数组保存...

  • 封装图片压缩

    [TOC] demo地址:https://github.com/vpractical/CatCompress 相关 optimize_coding为false,导致图片压缩效...

  • Retrofit分析

    [TOC] 使用://www.greatytc.com/p/a3e162261ab6 分析://www.greatytc.com/p/0c055ad46b...

  • app启动过程及生命周期调用

    [TOC] 涉及角色 launcher程序:手机桌面app AMS:负责四大组件的启动,管理 Zgyote进程:进程孵化器,作为socket的server端接收进程创建请求。...

  • Lifecycle原理分析

    Demo Activity中 其他需要声明周期的对象中 原理 以前看Glide时,第一次知道建立不可见碎片Fragment用来管理生命周期这种方式。现在Lifecycle也是...

  • 120
    DataBinding原理分析

    [TOC] 结论放在前面:整个过程就是将xml拆成2个xml,然后读取xml中带tag控件在ActivityMainBindingImpl创建时制作控件副本,User属性改变...

  • 模拟RxJava的实现原理

    [TOC] GitHub代码地址 使用 实现 1.被观察者抽象类 rxjava使用过程,每个操作符都是一层,每一层都是独立的,观察上一层,同时被下一层观察。最上层不用向上观察...

  • 模拟OkHttp的实现原理

    [TOC] 记录下异步请求实现思路, [1.Call中:] [2.Dispatcher中:] [3.Call中内部类AsyncCall:] [4.Call中getRespon...

  • 120
  • 实现一个使用最简单的权限框架

    [TOC] 这个已经在用了,记录下过程GitHub地址 使用方式 1.在BaseActivity,BaseFragment中加入: 注意:第一个参数是当前activity/f...

  • Kotlin书写动态代理method.invoke(iam, *args) must not be null

    [TOC] 问题 1.动态代理使用Kotlin书写报错 描述 kotlin书写: 报错在 return method.invoke(iam, args) 这一行,用java写...

  • 手动实现事件总线框架EventBus

    [TOC] 特性1.事件传递2.线程调度3.粘性事件,可以有多个,但需要自己移除4.顺序事件 使用了静态方法和代理类,代码结构和demo有所不同 1.基础使用方式 注册注销 ...