简析OkHttp 是对 Socket 的封装。URLConnection 在 4.4 以后底层也使用了 OkHttp。 Android 源码中 /external/okhttp/jarjar-rules.txt 中表示 com.squareup 开关的包会在编译时打包成 com.android 开头的包。 12rule com.squareup.** com.android.@1rule okio.** com.a 2019-10-18 Android Android OkHttp 网络
简析Glide 最简洁的图片加载流程: 123Glide.with(context) .load(myUrl) .into(imageView); with 传递图片加载上下文,获取图片加载请求管理器(RequestManager)。 load 传递图片加载数据源,构建图片加载请求建造器(RequestBuilder)。 into 传递图片加载目标载体,创建图片加载请求(Request),执行图片 2019-10-17 Android Android 图片 Glide
简析Bitmap 基于 9.0(29)简析 Bitmap 类。 我们只关注 Bitmap 类暴露出来的(即访问权限为 public)东西。 枚举类 Config 枚举类 CompressFormat 若干 createBitmap 静态方法 其他方法 枚举类 Config可能的 bitmap 配置。bitmap 配置描述像素的存储方式。这会影响质量(颜色深度)以及显示透明/半透明颜色的能力。 Config 2019-10-16 Android Android 图片 Bitmap
Android图片压缩 为什么要压缩减少内存占用内存占用大小 = Bitmap 大小 = 总像素点数 x 一个像素点占用的字节数 BitmapAndroid 中图片在内存中的表达形式是 Bitmap,即位图。 总像素点数总像素点数由什么决定呢? 总像素点数 = 图片源长度 x 缩放比例 x 图片源宽度 x 缩放比例 缩放比例可以大致表示为:(为什么说大致呢?因为不是绝对的,实际还有其他因素可以影响实际缩放比例,如 inS 2019-10-14 Android Android 图片 压缩
简析BitmapFactory 基于 9.0(29)简析 BitmapFactory 类。 我们只关注 BitmapFactor 类暴露出来的(即访问权限为 public)东西。 静态内部类 Options 若干 decode 方法 静态内部类 OptionsOptions,顾名思义,是 BitmapFactory 用于 decode 方法的选项参数。让我们看看有哪些: Bitmap inBitmap如果使用此参数,deco 2019-10-14 Android Android 图片 Bitmap
模板整理之上传仓库 我们在日常打 aar 包和 jar 包,并上传到远端中央仓库时,需要引入大段 gradle 代码,较为繁琐。我这里整理了常用的上传到中央仓库的 gradle 代码,提供了较为方便的使用方式。上传代码模板 GitHub目前只有上传到 bintray 也就是 jcenter 的整理,后期有需要其他远端中央仓库的会继续跟进。 模板整理GitHub 2019-10-09 模板 Android 模板 上传仓库
模板整理之Travis CI 官方文档 免费 Travis-CI(针对开源项目):https://travis-ci.org 收费 Travis-CI(针对私有和商业项目):https://travis-ci.com 使用步骤 登录 Travis CI 并对指定的项目启用。 配置 .travis.yml ,参考官方文档。 push(或其他方式)触发 Travis-CI。 实现工作流 构建。开发一些新功能,提交代码后自动构建出 2019-10-09 模板 Android 模板 Travis CI
Crash治理之TimeoutException 产生原因与 GC 过程相关的守护线程中的 2 个守护线程 FinalizerDaemon 和 FinalizerWatchdogDaemon 有关。 FinalizerDaemon :析构守护线程。对于重写了成员函数 finalize 的对象,它们被 GC 决定回收时,并没有马上被回收,而是被放入到一个队列中,等待 FinalizerDaemon 守护线程去调用它们的成员函数 finalize 2019-09-25 Android Crash TimeoutException
Android动画 Android 中动画划分为两大类 视图动画(View Animation)和 属性动画(Property Animation)。其中 属性动画(Property Animation)需要在 Android3.0 之后(API >= 11)使用。视图动画(View Animation)又包括了 帧动画(Frame Animation) 和 补间动画(Tweened Animation)。 视 2019-09-16 Android Android 动画
Android自定义View 什么是自定义 View自定义 View 就是通过继承 View 或者 View 的子类,并在继承的类里面实现自定义的处理逻辑(重写相应的方法),以达到自己想要的效果。 为什么要自定义 View 让界面有特定的显示效果、交互 优化布局(减少布局层次) 封装 如何自定义 View自定义 View 主要流程 测量阶段 measure 布局阶段 layout 绘制阶段 draw 背景:DecorVie 2019-09-16 Android Android 自定义View