自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 资源 (2)
  • 收藏
  • 关注

原创 Android sqlit java层源码分析

【1.1】打开数据库我们一般回调用SQLiteOpenHelper的getWritableDatabase,getReadableDatabase来打开一个可写或者只读数据库,其实都是通过getDatabaseLocked来实现,writable值不同而已,源码分析如下 private SQLiteDatabase getDatabaseLocked(boolean writable)...

2018-06-18 17:52:59 273

原创 getDrawable()缓存带来的问题

我们经常通过getContext().getResources().getDrawable()来获取一个问题,当因为Android机制使用了缓存机制,直接setColorFilter()修改颜色,可能同时也会改变其他getDrawable()的颜色。我们先来看一下getDrawable()的源码吧。 public Drawable getDrawable(int id, @Nulla...

2018-06-02 14:49:10 1753

原创 EventBus2.2源码分析

由于我们项目使用了EventBus2,所以查看一下源码,了解一下原理关键的event缓存数据结构 // 订阅方法,按event类型归类 private final Map<Class<?>, CopyOnWriteArrayList<Subscription>> subscriptionsByEventType; // ...

2018-06-02 13:18:41 265

原创 Java线程池原理分析

【1.0】 Executors类提供了几种不同特性的线程池,其主要实现类都离不开ThreadPoolExecutor,先看一下ThreadPoolExecutor的构建方法public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, ...

2018-06-02 13:09:22 115

原创 startActivity启动过程

代码来自Android 7.1.1版本,简单分析startActivity的启动过程【1.1】 启动Activity,最终都会调到startActivityForResult,requestCode默认-1,options默认null //Activity.java public void startActivityForResult(@RequiresPermis...

2018-06-02 13:08:29 323

原创 Android Handler 机制

Handler机制是Andrdoid中很常用的线程任务控制,Handler类负责信息传送和分发执行,Looper是控制Message中心,MessageQueue保持和提供Message。1、Message顺便提一下Message.obtain(),Message会维护一个信息池,以单列表结构存储,使用它可以减少对象的创建,节省内存,代码如下 //池默认长度是MAX_POOL_...

2018-06-02 13:07:51 85

原创 《Java虚拟机》笔记

记录了自己读《Java虚拟机》的一些笔记,主要在内存管理和代码优化那一块。1、JVM内存管理运行时数据区方法区(Method Area)虚拟机栈(VM Stack)本地方法栈(Native Method Stack)堆(Heap)程序计数器(Program Counter Register) 执行引擎、本地库接口程序计数器 - 是一块较小的内存空...

2018-06-02 13:07:12 107

原创 Android特有的数据结构分析

android为了减少内存的使用和装箱拆箱损耗的性能,提供一些特有的数据接口,在 android.util包下面,都是使用数据进行保存,适当的使用这些对象可以优化我们的应用ArrayMapArraySetSparseArraySparseIntArraySparseBooleanArraySparseLongArrayArrayMap可代替Map//保存hashint[...

2018-06-02 13:06:32 1139

原创 Java常用数据结构分析

总结一下常用的数据结,以上是它们大概的继承关系。 - List:列表 - Map:key-value映射关系 - Set:集合中元素唯一Collection ├─List│ ├─ArrayList│ ├─LinkedList│ ├─Vector│ ├─Set│ ├─HashSet│ ├─TreeSetMap├─HashMap├─TreeMap├─L...

2018-06-02 12:59:26 220

Android-Http

Android http 操作,加异步封装,Android http 操作,加异步封装,Android http 操作,加异步封装,Android http 操作,加异步封装,Android http 操作,加异步封装,Android http 操作,加异步封装

2015-07-12

one think工具

one think工具one think工具one think工具one think工具one think工具one think工具one think工具one think工具one think工具

2013-12-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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