stven_king的专栏

自信人生两百年、会当击水三千尺

关于RxJava的基础心法解析

前言 我接触Rxjava是在2015年底,已经过去4年的时间了。 2016年学习过一阵子RxJava的操作符也做过一些笔记,我们项目的网络请求框架也替换成了Okhttp+Retrofit,所以使用RxJava做线程间切换就非常好用。 一开始接触RxJava感觉除了线程切换之外很能发现其实际的作用,...

2019-01-07 20:18:18

阅读数:109

评论数:0

Android6.0动态权限适配&XMPermissions

Android6.0动态权限 简介 从 Android 6.0(API 级别 23)开始,用户开始在应用运行时向其授予权限,而不是在应用安装时授予。此方法可以简化应用安装过程,因为用户在安装或更新应用时不需要授予权限。它还让用户可以对应用的功能进行更多控制;例如,用户可以选择为相机应用提供相机访...

2018-09-29 18:10:57

阅读数:128

评论数:0

InstantRun从2.0到3.0,历史解毒

个人博客地址 http://dandanlove.com/ InstantRun从2.0到3.0,历史解毒 前言 Instant Run已经出来3年了,为什么现在会想写这篇文章。从Instant Run 发布就已经有文章做了详细的介绍,但主要分为两类:一类是讲其主要实现原理或是讲...

2018-05-18 15:32:05

阅读数:679

评论数:0

Android动画绘制原理(源码解析)

Android 平台提供了三类动画,一类是 Tween 动画-Animation,即通过对场景里的对象不断做图像变换 ( 平移、缩放、旋转 ) 产生动画效果;第二类是 Frame 动画,即顺序播放事先做好的图像,跟电影类似。最后一种就是3.0之后才出现的属性动画PropertyAnimator。 ...

2018-05-01 00:02:16

阅读数:155

评论数:0

Android系统的编舞者Choreographer

个人博客地址 http://dandanlove.com/ 前言 上一篇文章 Android的16ms和垂直同步以及三重缓存 解释了手机流畅性的问题,并在文章中提到了在Android4.1中添加的Vsync。Choreographer机制,用于同Vsync机制配合,实现统一调度界面绘图。 ...

2018-04-26 19:59:20

阅读数:475

评论数:0

Android的16ms和垂直同步以及三重缓存

个人博客地址 http://dandanlove.com/ 前言 手机屏幕是由许多的像素点组成的,每个像素点通过显示不同的颜色最终屏幕呈现各种各样的图像。手机系统的类型和手机硬件的不同导致UI的流畅性体验个不一致。 屏幕展示的颜色数据 在GPU中有一块缓冲区叫做 Frame...

2018-04-26 19:55:30

阅读数:372

评论数:0

红黑树的操作揭秘手册

前言 二叉树知识点回忆以及整理这篇文章中我们说过“二叉树是一个简单的二分查找,但其性能取决于二叉树的层数”。 - 最好的情况是O(logn),存在于完全二叉树情况下,其访问性能近似于折半查找; - 最差的情况是O(n),比如插入的元素所有节点都没有左子树(右子树),这种情况需要将二叉树的全部...

2018-03-18 22:11:52

阅读数:196

评论数:0

遇见LayoutInflater&Factory

在我们写listview的adapter的getView方法中我们都会通过LayoutInflater.from(mContext)获取LayoutInflater实例然后调用inflate方法创建View。这个有xml布局文件转化为View对象的过程到底是怎么样的,我们今天通过源码来了解一下。

2017-11-17 11:18:36

阅读数:242

评论数:0

Java垃圾回收器与内存分配策略

上一篇JVM内存模型讲述了Java虚拟机在运行时所管理的内存划分下的每个数据区域的各自用途,以及创建和销毁时间。当需要排查各种内存泄漏、内存溢出问题时,当来及收集成为系统达到更高并发量的瓶颈时,我们需要对JVM的GC机制和内存分配又更多的了解,这边文章是在上一篇文章的基础之上讲述了Java垃圾回收...

2017-08-26 15:38:52

阅读数:3484

评论数:8

Android类加载之PathClassLoader和DexClassLoader

Dalvik虚拟机加载的dex文件。dex文件是Android对与Class文件做的优化,以便于提高手机的性能。可以想象dex为class文件的一个压缩文件。dex在Android中的加载和class在jvm中的相同都是基于双亲委派模型,都是调用ClassLoader的loadClass方法加载类。

2017-02-23 16:31:47

阅读数:2125

评论数:2

小明要吃冰淇淋之RxJava:lift原理

个人博客地址 http://dandanlove.com/ 前言 关于RxJava的基础心法解析 我们在使用 RxJava 的时候必不可少的会使用一些基础的操作符, map 、 flatMap 、 filter 等。这些都是对 Obserbable 进行各种各样的变化,我们查看其实现都能看到一个叫...

2019-01-14 21:58:41

阅读数:39

评论数:0

一次Observable的empty和never方法的rx源码笔记

我们在用 RxJava 的时候,如果需要在某个地方需要中断事件流,那么直接返回一个 Observable.empty() ,与它有类似功能的有 Observable.never 。 Observable.just(1,2,3,4,5) .flatMap((Func1&lt...

2019-01-07 21:07:07

阅读数:26

评论数:0

Android:Base64生产Bitmap压缩和转byte[]

最近在做微信分享的时候遇到了分享图片的大小限制问题,需要对图片进行压缩。在过程中遇到几个有趣的地方在此记录。 Bitmap.getByteCount的大小和转化为byte[]的大小差很多不是8倍,而是几十倍,我自测的为67倍 压缩Bitmap直接根据长宽比进行调用 createScaledB...

2019-01-07 20:41:55

阅读数:24

评论数:0

Android关于微信小程序的唤起和分享

个人博客地址 http://dandanlove.com/ 最近做了一些有关于微信小程序的项目,涉及了微信小程序的唤起和分享微信小程序。 所有的内容都来源于 微信开放平台 public class WXProxy { private IWXAPI mShareAPI; /** ...

2018-11-30 10:57:31

阅读数:119

评论数:0

Okhttp拦截器Interceptor学习和使用

前言 前年的这个时候我们项目将网络框架替换为okhttp+retrofit ,然后我对 retrofit 源码进行了学习和分享,写了几篇相关的文章同时更新了项目的网络框架。 Android网络之Retrofit2.0使用和解析 Retrofit2.0中注解使用套路 Retrofit2.0+Okht...

2018-11-25 18:20:53

阅读数:118

评论数:0

Android更新资源文件浅思考

前言 最近在看 《深入探索Android热修复技术原理7.3Q.pdf》 时,遇到一个之前没有注意过的问题:关于资源修更新的Android的版本兼容?作为程序员我们需要非常严谨的思路,是什么导致了资源的修复更新需要做版本兼容? 这个问题是使我写下这边文章的原因,下边我们带着问题来找答案!!~! 这...

2018-10-27 18:07:54

阅读数:142

评论数:0

Multidex记录三:源码解析

个人博客地址 http://dandanlove.com/ Multidex记录一:介绍和使用 Multidex记录二:缺陷&解决 Multidex记录三:源码解析 记录Multidex源码解析 为什么要用记录呢,因为我从开始接触Android时我们的项目就在655...

2018-10-22 10:57:00

阅读数:54

评论数:0

Multidex记录二:缺陷&解决

个人博客地址 http://dandanlove.com/ Multidex记录一:介绍和使用 Multidex记录二:缺陷&解决 Multidex记录三:源码解析 记录Multidex缺陷&解决 为什么要用记录呢,因为我从开始接触A...

2018-10-22 10:55:53

阅读数:64

评论数:0

Multidex记录一:介绍和使用

个人博客地址 http://dandanlove.com/ Multidex记录一:介绍和使用 Multidex记录二:缺陷&解决 Multidex记录三:源码解析 记录Multidex介绍和使用 为什么要用记录呢,因为我从开始接触Android时我们的项目就在65...

2018-10-22 10:53:59

阅读数:57

评论数:0

Android平台JSON预览(JSON-handle)

Chrome常用的插件JSON-handle,用过的都知道。 最近在做接口加密,所有的数据(request和response)都是加密数据,无法沟通fildder或者Charles抓包查看。那么自己做一个查看json``格式的View:支持动态的放大,缩小,支持所有数据格式~! 效果图: ...

2018-09-10 20:29:26

阅读数:82

评论数:0

提示
确定要删除当前文章?
取消 删除