朱利源的博客

既然选择了远方.便只顾风雨兼程

排序:
默认
按更新时间
按访问量

SparseArray源码浅析

SparseArray源码浅析 前言 最近有小伙伴去面试了,在群里分享的面试题有一道是关于SparseArray的,本来是不想看的o(╥﹏╥)o,没想到是个面试题,那没办法只能看看了。 概述 本文还是跟前面分析HashMap、LruChache的方式一样分别介绍构造方法、增、删、改、查方法。 这里...

2018-11-18 20:47:55

阅读数:52

评论数:0

Android 手动实现热更新

前言 在上篇Android ClassLoader浅析中我们分析了安卓ClassLoader和热更新的原理,这篇我们在上篇热更新分析的基础上写个简单的demo实践一下。 概述 我们先回顾下热更新的原理 PathClassLoader是安卓中默认的类加载器,加载类是通过findClass()方法,而...

2018-10-30 19:55:59

阅读数:163

评论数:1

Android ClassLoader浅析

前言 最近在看Tinker的原理,发现核心是通过ClassLoader做的,由于之前也从未接触过ClassLoader趁着上周末看了安卓ClassLoader相关源码,这里分享一发安卓的ClassLoader和热更新的实现原理。 ClassLoader 首先我们要知道,程序在运行时要把对应的类加载...

2018-10-26 17:01:01

阅读数:82

评论数:1

LruCache源码解析

前言 本篇将介绍LruCache,而LruCache是用LinkedHashMap实现的,LinkedHashMap继承HashMap所以没看过HashMap的先看下我另外篇博文HashMap源码解析(JDK8)再来看本篇。 接下来是正菜LruCache不过吃之前我们先看下前菜LinkedHash...

2018-10-12 16:13:04

阅读数:79

评论数:0

HashMap源码解析(JDK8)

前言 这段时间有空,专门填补了下基础,把常用的ArrayList、LinkedList、HashMap、LinkedHashMap、LruCache源码看了一遍,List相对比较简单就不单独介绍了,Map准备用两篇的篇幅,分别介绍HashMap和(LruCache+LinkedHashMap),因...

2018-10-11 17:09:49

阅读数:60

评论数:0

关于Android MvvM的一些体会

关于Android MvvM的一些体会 前言 由于我司项目较老有很多历史包袱代码结构也比较混乱,需求复杂的页面动辄activity中1000多行,看着很是头疼,于是趁着加班提前做完需求余下的时间学习了mvvm对项目部分功能进行了改造,目前已经使用3个版本了,本篇博文分享下我使用的感受。 准备 ...

2018-09-26 10:19:14

阅读数:324

评论数:1

rxjava操作符结合使用场景简介

rxjava操作符结合使用场景简介 前言 本文将通过实际的例子来介绍rx相关的操作符,如果对rxjava还不熟悉的同学请先查看rxjava相关基础姿势再来查看本文 准备 本文依赖rxjava版本如下 implementation 'io.reactivex.r...

2018-06-26 16:28:31

阅读数:192

评论数:8

WebSocket安卓客户端实现详解(三)--服务端主动通知

WebSocket安卓客户端实现详解(三)–服务端主动通知本篇依旧是接着上一篇继续扩展,还没看过之前博客的小伙伴,这里附上前几篇地址 WebSocket安卓客户端实现详解(一)–连接建立与重连WebSocket安卓客户端实现详解(二)–客户端发送请求终于是最后一篇啦,有点激动\ ( ≧▽≦ ) /...

2017-08-06 13:46:57

阅读数:5967

评论数:21

WebSocket安卓客户端实现详解(二)--客户端发送请求

WebSocket安卓客户端实现详解(二)–客户端发送请求本篇接着上一篇讲解WebSocket客户端发送请求和服务端主动通知消息,还没看过第一篇的小伙伴,这里附上第一篇链接WebSocket安卓客户端实现详解(一)–连接建立与重连.本篇依旧干货十足内容很多所以我们还是先热身下客户端发送请求为了方便...

2017-08-06 11:02:08

阅读数:10216

评论数:21

让你不再俱怕Fragment State Loss

让你不再俱怕Fragment State Loss 使用过Fragment的人我相信对臭名昭著的状态丢失问题(IllegalStateException: Can not perform this action after onSaveInstanceState)一定不会陌生。曾经被这个问题...

2017-07-22 23:07:59

阅读数:499

评论数:1

WebSocket安卓客户端实现详解(一)--连接建立与重连

今年在公司第一个需求就是基于websocket写一个客户端消息中心,现在已经上线很久了在司机这种网络环境平均一天重连8次,自认为还是不错的.当时写的时候那个心酸啊,主要因为第一次写都不知道该从哪下手,没有方向.所以这里我将尽可能详细的跟大家分享出来. 本篇内容会比较多,先来段舞蹈热身下.我准备按如...

2017-06-10 00:07:03

阅读数:32544

评论数:22

Thread->线程池

Thread->线程池前言Callable与Future在介绍线程池前,我们先介绍下Callable与Future因为等会封装异步任务会用到.而异步任务Runnable相信都在熟悉不过了,Callable与Runnable类似,但Callable有返回值.public interface C...

2017-05-19 14:07:41

阅读数:598

评论数:1

Thread->sleep、wait、join使用

Thread sleep、wait、join使用这里先介绍join,然后把两个有关联的sleep和wait一起介绍.join()这个方法比较好理解,当前线程等待指定线程终止后在执行,将两个交替执行的线程合并为顺序执行的线程.比如在B线程中调用A线程的join()方法,直到A线程执行完毕,B线程才会...

2017-05-04 11:38:55

阅读数:998

评论数:2

泛型(二)->擦除&擦除带来的问题

泛型(二)->擦除&擦除带来的问题 本篇首先介绍泛型的擦除,然后围绕泛型擦除所带来的问题进行精确打击,话不多说,我们直接开始正文. 文中很多例子都会用到Pair这个对象,这里统一声明.public class Pair<T> { private T first;...

2017-03-19 18:46:38

阅读数:1809

评论数:4

泛型(一)->简单使用

泛型(一)->简单使用 从上周末到现在陆陆续续看了几天终于把<< java核心技术 >>泛型看完了,有种豁然开朗的感觉尤其是对于泛型擦除又有了新的认识,趁脑还热赶紧记录下来. 关于泛型我准备分两篇写,第一篇是关于泛型的使用属于基础(必须掌握),第二篇是泛型擦...

2017-03-17 15:43:45

阅读数:3009

评论数:4

堆栈、堆、方法区介绍

堆栈、堆、方法区介绍终于开始看java啦…不知道有没有很多人跟我一样想法,先把安卓看完了再去看java,因为安卓直接跟工资挂钩而java更多的是内功.直到前段时间我和我们这边后台大佬对接开发websocket噩梦就开始了,这个线程不安全,这个单例在某些情况下有问题,这里应该这样封装等等…..每天围...

2017-03-10 10:37:06

阅读数:20587

评论数:19

IPC(中)-进程间通讯方式详解

IPC(中)1 Android中IPC方式在第一篇IPC(上)中我们已经介绍了IPC的基础知识:序列化和Binder,本篇将详细介绍各种跨进程通讯方式.具体有如下几种: Intent中extras传递 共享文件 Binder ContentProvider Socket 1.1 Bundle四...

2017-01-22 15:53:07

阅读数:2886

评论数:8

Android自定义权限

转至http://www.cnblogs.com/whoislcj/p/6072718.html 前言:      最近突然喜欢上一句诗:“宠辱不惊,看庭前花开花落;去留无意,望天空云卷云舒。” 哈哈~,这个和今天的主题无关,最近只要不学习总觉得生活中少了点什么,所以想着围绕着最近面试...

2017-01-22 15:09:11

阅读数:640

评论数:0

IPC(上)-多进程入门

1 IPC介绍既然是IPC的开篇那么先介绍下IPC的定义 IPC:进程间通信或者跨进程通信,即进程间交换数据的过程. 说到进程,那么需要了解下什么是进程.什么是线程,按操作系统描述,线程是CPU调度的最小单元,同时线程是一种有限的系统资源,而进程指一个执行单元,在PC和移动设备上指一个程序或者...

2017-01-05 09:42:03

阅读数:1666

评论数:6

AlarmManager-系统推荐的定时任务

近期leader提了很多这样的需求:每隔几个小时拉取服务器的配置信息存在本地、每隔一段时间跟服务端校对一下本地时间、每隔一段时间上传一下本地日志等等。其实这些本质都是定时任务,隔一段时间去干xxx,那么在安卓中定时任务无非三种实现方式,Handler(CountDownTimer)、Timer、w...

2016-12-16 14:42:29

阅读数:9101

评论数:6

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