240 发简信
IP属地:广东
  • 120
    从架构角度看Retrofit的作用、原理和启示

    Retrofit是squareup公司的开源力作,和同属squareup公司开源的OkHttp,一个负责网络调度,一个负责网络执行,为Android开发者提供了即方便又高效的...

  • 120
    flutter-state生命周期探索

    如今公司用flutter开发项目,写了几个月的业务,对于widget的生命周期也朦朦胧胧,如今得空来探知下。 测试界面 最外层一个Scaffold包着父widget,是个St...

  • Dart 基础之Future使用

    什么是future future类似android中的handler,表示稍后做的任务使用如下: 可以看到main end先打印,然后打印future里面的任务,最后then...

  • 120
    Dart 异步(一)线程

    单线程事件队列 Dart程序是单线程+事件驱动方式运行,Dart代码的运行就是在不停的在处理一个又一个的事件而 Dart 的单线程跟 Java 的完全不同,虽然都是单线程,但...

  • Dart 基础之Stream

    stream和Rxjava,Kotlin Flow一样,产生数据流并处理 首先来看看如何使用 基本api使用 StreamController 是个泛型,泛型表示对应的数据类...

  • dart基础和kotlin不同之处

    变量 声明变量 声明可以有两种方式,一种是不指定类型,即使用var关键字这种发方式和kotlin一样 另一种是明确指定类型(Optional types),这种和java一样...

  • NDK编译异常No such file or directory

    ndk项目,重命名cpp文件后,编译出现如下异常: Android NDK clang compiler error showing 'No such file or dir...

  • 120
    【进阶】RecyclerView源码解析(一)——绘制流程

    本系列博客基于com.android.support:recyclerview-v7:26.1.01.【进阶】RecyclerView源码解析(一)——绘制流程2.【进阶】R...

  • kotlin版对象复用池

    项目中经常用到对象池复用,但是不一样的对象对应的复用池都不统一。想着能否有一个对象池,可以不用关心对象是啥,实现对象池的功能?对象池的功能需要支持: 不关系对象是什么,都能复...

  • Gradle自定义插件(二)ASM字节码插桩打印耗时

    前面我们了解了自定义插件的基础流程[//www.greatytc.com/p/33c8072c0fb7]我们现在利用ASM字节码框架在每个方法里面自动插入计时方法 ...

  • ViewModel源码探究

    一. 什么是ViewModel 官方对ViewModel的定义: 二. ViewModel有什么优点 Activity配置更改重建时(比如屏幕旋转)保留数据UI组件(Acti...

  • Lifecycles原理

    Lifecycles 作用:管理 Activity 和 Fragment 生命周期既然可以感知activity和fragment的生命周期,那么必然在其生命周期的方法里添加了...

  • 组件化笔记

    1 .组件间的application合并规则 功能module有自定义Application,主module没有自定义Application,打包会引用功能模块module的...