240 发简信
IP属地:台湾
  • 120
    Android源码:View是如何绘制到屏幕上的?

    前言 在Android中如果要显示一个页面,那么只需要在Activity的onCreate()方法中,把我们写好的页面布局layout传入到setContentView()方...

  • Kotlin 的隐藏性能开销与避坑指南

    在 2019 年 Google I/O 大会上,Google 宣布了今后 Android 开发将优先使用 Kotlin ,即 Kotlin-first,随之在 Android...

  • 问个问题,这里的线程池保持了最大并发而且没有复用线程,和直接new Thread来执行任务有什么区别

    okhttp分发器中线程池参数的理解

    我们来看一下okhttp的Dispatcher.java中创建的线程池是什么样的 重要的参数有两个 1.核心线程数 0 为什么核心线程数要是0呢,okhttp这样做是因为考虑...

  • 120
    说一下View绘制流程

    1、View是如何被添加到屏幕窗口上 上代码: 这是写了一千遍的代码,通过setContentView将xml布局添加到Activity中,具体怎么添加的?跟进去: 调用Wi...

  • 120
    请你介绍一下Binder

    一、什么是binder binder是一种IPC(Inter-Process Communication,进程间通信)的通信机制。 二、什么时候要用到进程间通信 WebVie...

  • 120
    启动优化

    一、为什么要做启动优化? 1、app的启动速度是用户的第一体验,影响用户的第一印象。 2、八秒定律:在网页中如果一个网页八秒钟还没有打开,70%的用户都会选择放弃等待;这个对...

  • 120
    APK包体积优化

    一、为什么要做apk包体积优化? 1、提高下载转化率;包的大小也是用户考虑是否下载的因素之一。 2、渠道合作商的要求;如果我们的app要跟手机厂商合作预装的话,手机厂商会对a...

  • 120
    内存优化——内存泄漏

    什么是内存泄漏? 程序中已动态分配的的堆内存由于某种原因未释放或无法释放,造成系统内存的浪费。本质上是长生命周期的对象持有短生命周期对象的强引用,从而导致短生命周期对象无法被...

  • 120
    内存优化——内存抖动

    什么是内存抖动? 短时间内大量的对象被创建,导致可用内存不足,从而引起频繁gc回收对象,这种已用内存忽高忽低的现象就叫内存抖动。由于gc的过程会 “stop the worl...

  • 120
    OKHttp(二)intercepter拦截器

    上一篇我们说完了dispatcher分发器,我们知道了请求任务是如何分发出去的,那响应是如何获取到的呢?再看一下RealCall中的同步方法execute(): 可以看到一个...

  • 120
    OKHttp(一)dispatcher分发器

    简介 OkHttp是当下Android使用最频繁的网络请求框架,由Square公司开源。Google在Android4.4以后开始将源码中的HttpURLConnection...