上一页 1 2 3 4 5 6 7 ··· 14 下一页
摘要: Fresco 是一个强大的图片加载组件。由于 Fresco 源码比较多,仅凭一篇文章是无法将其说清楚的,因此会当做一个系列,本文是框架结构介绍,不会深入细节,但是会让你对 Fresco 的整个图片加载流程有个基本的认识。这样以后碰到 Fresco 你也不会望文生畏。 阅读全文
posted @ 2021-01-09 16:47 huansky 阅读(2223) 评论(0) 推荐(0) 编辑
摘要: 本文首先会 HTTP 的特点和优缺点,然后会详细介绍 HTTP 长连接和短连接的连接管理,通过阅读本文能够对 HTTP 连接有个深入的认识。 阅读全文
posted @ 2021-01-02 12:01 huansky 阅读(1148) 评论(0) 推荐(4) 编辑
摘要: 在现实生活中,存在很多“部分-整体”的关系,例如,大学中的部门与学院、总公司中的部门与分公司、学习用品中的书与书包、生活用品中的衣服与衣柜、以及厨房中的锅碗瓢盆等。在软件开发中也是这样,例如,文件系统中的文件与文件夹、窗体程序中的简单控件与容器控件等。对这些简单对象与复合对象的处理,如果用组合模式来 阅读全文
posted @ 2020-12-14 16:29 huansky 阅读(962) 评论(0) 推荐(1) 编辑
摘要: 本文主要是侧重于 HTTP 的优化,对于 HTTPS 后续文章会讲。 既然要做性能优化,那么,我们就需要知道:什么是性能?它都有哪些指标,又应该如何度量,进而采取哪些手段去优化? “性能”其实是一个复杂的概念。不同的人、不同的应用场景都会对它有不同的定义。对于 HTTP 来说,它又是一个非常复杂的系 阅读全文
posted @ 2020-12-13 15:32 huansky 阅读(3289) 评论(0) 推荐(5) 编辑
摘要: 对于 ContentProvider 还不是很熟悉的同学,可以阅读上一篇 Android ContentProvider 基本原理和使用详解。本文主要是对 contentProvider 的源码进行分析,从而了解 ContentProvider 的实现原理。 本文分析基于 android 10 的源 阅读全文
posted @ 2020-11-22 19:25 huansky 阅读(1864) 评论(0) 推荐(0) 编辑
摘要: HTTP(HyperTextTransferProtocol)是超文本传输协议的缩写,它用于传送 WWW 方式的数据,关于 HTTP 协议的详细内容请参考 RFC2616。HTTP 协议采用了请求/响应模型。客户端向服务器发送一个请求,请求头包含请求的方法、URI、协议版本、以及包含请求修饰符、客户 阅读全文
posted @ 2020-11-21 16:05 huansky 阅读(6191) 评论(0) 推荐(2) 编辑
摘要: 前言 1990年互联网诞生之初,就已经开始用超文本传输协议 HTTP 传输数据,这也是为什么现在网页地址都是以 http 开头的原因。但是HTTP协议传输数据是明文传输,任意的人抓包就能看到传输的数据,这显然不安全。1994年,Netscape 公司用加密协议增加了 HTTP,开始在 HTTP 的基 阅读全文
posted @ 2020-11-16 09:46 huansky 阅读(9966) 评论(1) 推荐(8) 编辑
摘要: 这是一个老生常谈的话题,文章将详细描述发生在这一过程中的内容。 请求 URL 当我们在浏览器里输入一个网址,比如 https://www.baidu.com/ URL由三部分组成:资源类型、存放资源的主机域名、资源文件名。也可认为由4部分组成:协议、主机、端口、路径。 URL的一般语法格式为: // 阅读全文
posted @ 2020-11-15 23:42 huansky 阅读(4719) 评论(1) 推荐(6) 编辑
摘要: 传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由 IETF 的 RFC 793 定义,是为了在不可靠的互联网络上提供可靠的端到端字节流而专门设计的一个传输协议。 互联网络与单个网络有很大的不同,因为互联网络的不 阅读全文
posted @ 2020-11-10 23:17 huansky 阅读(5086) 评论(0) 推荐(2) 编辑
摘要: ANR介绍 ANR 的全称是 Application No Responding,即应用程序无响应,具体是一些特定的 Message (Key Dispatch、Broadcast、Service) 在应用的UI线程(主线程)没有在规定的时间内处理完,进而触发 ANR 异常。 ANR 由消息处理机制 阅读全文
posted @ 2020-11-08 21:25 huansky 阅读(12180) 评论(0) 推荐(3) 编辑
摘要: 获取 view 的位置 View.getLocationInWindow(int[] location) 一个控件在其父窗口中的坐标位置 View.getLocationOnScreen(int[] location) 一个控件在其整个屏幕上的坐标位置 getLocationInWindow是以B为 阅读全文
posted @ 2020-11-03 17:34 huansky 阅读(385) 评论(0) 推荐(0) 编辑
摘要: Choreographer 的作用主要是配合 Vsync ,给上层 App 的渲染提供一个稳定的 Message 处理的时机,也就是 Vsync 到来的时候 ,系统通过对 Vsync 信号周期的调整,来控制每一帧绘制操作的时机。目前大部分手机都是 60Hz 的刷新率,也就是 16.6ms 刷新一次, 阅读全文
posted @ 2020-11-02 00:53 huansky 阅读(2074) 评论(0) 推荐(0) 编辑
摘要: 最近部门打算优化下 APP 在低端机上的卡顿情况,既然想优化,就必须获取卡顿情况,那么如何获取卡顿情况就是本文目的。 一般主线程过多的 UI 绘制、大量的 IO 操作或是大量的计算操作占用 CPU,导致 App 界面卡顿。只要我们能在发生卡顿的时候,捕捉到主线程的堆栈信息和系统的资源使用信息,即可准 阅读全文
posted @ 2020-11-01 16:18 huansky 阅读(2721) 评论(0) 推荐(0) 编辑
摘要: ContentProvider(内容提供者)是 Android 的四大组件之一,管理 Android 以结构化方式存放的数据,以相对安全的方式封装数据(表)并且提供简易的处理机制和统一的访问接口供其他程序调用。 Android 的数据存储方式总共有五种,分别是:Shared Preferences、 阅读全文
posted @ 2020-10-18 20:14 huansky 阅读(13416) 评论(0) 推荐(0) 编辑
摘要: 概述 HandlerThread 相信大家都比较熟悉了,从名字上看是一个带有 Handler 消息循环机制的一个线程,比一般的线程多了消息循环的机制,可以说是 Handler + Thread 的结合,从源码上看也是如此的设计。 对 Handler 不熟悉的可以看 Android Handler 源 阅读全文
posted @ 2020-10-16 23:45 huansky 阅读(9682) 评论(5) 推荐(0) 编辑
摘要: 引言 对于设计模式,自己很早之前就看了好多本设计模式书籍,其中一些还看了好几遍,也一直希望自己能在编码的时候把这些设计模式用上去。可是,在日常的打码中,用的做多的就是单例,其次是观察者和建造者模式 ( builder ) 用得比较多,其他的基本很少用到。 用不到的原因是还是不能够理解设计模式的思想, 阅读全文
posted @ 2020-09-26 13:42 huansky 阅读(13041) 评论(2) 推荐(5) 编辑
摘要: 在现实生活中,某些类具有两个或多个维度的变化,如图形既可按形状分,又可按颜色分。如何设计类似于 Photoshop 这样的软件,能画不同形状和不同颜色的图形呢?如果用继承方式,m 种形状和 n 种颜色的图形就有 m×n 种,不但对应的子类很多,而且扩展困难。 阅读全文
posted @ 2020-09-22 12:55 huansky 阅读(758) 评论(0) 推荐(0) 编辑
摘要: 顾名思义,责任链模式(Chain of Responsibility Pattern)为请求创建了一个接收者对象的链。这种模式给予请求的类型,对请求的发送者和接收者进行解耦。这种类型的设计模式属于行为型模式。 阅读全文
posted @ 2020-09-21 00:04 huansky 阅读(8266) 评论(0) 推荐(0) 编辑
摘要: 设计模式文章 中介者模式 代理模式 抽象工厂模式详解 —— head first 设计模式 装饰者模式 适配器模式 策略模式 观察者模式 建造者模式 (Builder) 概述 中介者模式(Mediator Pattern)是用来降低多个对象和类之间的通信复杂性。这种模式提供了一个中介类,该类通常处理 阅读全文
posted @ 2020-09-20 11:01 huansky 阅读(752) 评论(0) 推荐(0) 编辑
摘要: 设计模式文章 中介者模式 代理模式 桥接模式 抽象工厂模式详解 —— head first 设计模式 装饰者模式 适配器模式 策略模式 观察者模式 建造者模式 (Builder) 概述 代理模式的定义:代理模式给某一个对象提供一个代理对象,并由代理对象控制对原对象的引用。通俗的来讲代理模式就是我们生 阅读全文
posted @ 2020-09-19 14:02 huansky 阅读(677) 评论(0) 推荐(1) 编辑
上一页 1 2 3 4 5 6 7 ··· 14 下一页