自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 一图看懂handler机制

2020-12-29 10:36:50 149

原创 APP启动流程分析

从Linux系统开始说起,当系统启动时,有一个引导进程,经过一系列操作,会生成一个一个init进程。这个进程会去唤醒zygote进程,zygote进程会去孵化出一个重要的线程,叫做systemServer进程。systemServer会执行它的main()方法,main方法中有个run()方法,会去启动各自服务,比如电量、wifi等服务,其中有个ActivityManagerService,当它启动时候,会激活一个launcher进程,launcher一开始会通过pms服务获取到各种应用信息,并最终展示到我

2020-12-18 14:45:51 367

原创 《Android开发艺术探索》Ipc-2 binder连接池demo

应用场景:当一个项目越来越庞大,假如有10个业务模块都需要使用AIDL来进行进程间通信,按之前的方式,每一个业务都创建一个service进行处理。这种弊端在于,大量的业务模块,要建立大量的service和AIDL文件进行通信,service作为4大组件之一,本身就是一种系统资源,大量的service会使得我们的应用看起来非常重量级。解决方法:binder连接池机制。在这种模式下,整个工作机制是

2018-01-10 09:22:22 363

原创 Android开发艺术探索--Activity生命周期和启动模式

正常的Activity从启动到销毁走这样的生命周期,onCreate onStart onResume onPause onStop onDestory 其中,onCreat和onDestory是相对的,对应Activity创建或者销毁。onStart和onStop是相对的,对应Activity是否可见。onResume和onPause是相对的,对应Activity是否位于前台,即是否可交互。

2017-05-23 10:42:36 301

原创 《Android开发艺术探索——Android的消息机制》

今天看了这一章节的内容,了解了Android的消息,这才真正的理解了handler、messageQueue,Looper、在实例化一个handler对象的时候,需要一个Looper对象,否则会报错。而主线程ActiivtyThread在入口方法main中已经初始化了Looper对象,因此可以直接调用。通过Looper和其里面的MessageQueue,组成了内部的消息循环机制。简单来说,ha

2017-05-22 14:52:43 427

原创 《Android开发艺术探索》IPC机制—1

今天看了《Android开发艺术探索》中的IPC机制,将读书笔记以自己的逻辑重新梳理一下。     跨进程通信,要了解这个首先得明白什么是进程,什么是线程。进程和线程其实是两个完全不同的概念。从操作系统的角度上来说的话,线程是CPU中调度的最小单元,进程是执行单元。可以说进程和线程之间的关系是包含和被包含的关系。进程中可以只有一个线程,叫做UI线程,负责对界面的所有处理。在pc和移动端中是一个

2017-05-21 17:26:02 258

原创 handler机制源码层解析(1)

1.子线程创建handler对象public class MainActivity extends AppCompatActivity { private Handler handler; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(saved

2017-01-04 10:56:51 261

转载 对Rxjava的理解以及结合Retrofit使用(一)

Rxjava说到根上,是处理异步操作的一个库。先看一下在github上对它的介绍:a library for composing asynchronous and event-based programs using observable sequences for the Java VM”(一个在 Java VM 上使用可观测的序列来组成异步的、基于事件的程序的库)。 Rxjava的好处在于让代

2016-11-02 17:36:30 1053 1

原创 自定义圆角矩形View

画图原理:先保存红色路径。mPath = new Path();Path topLeftPath = new Path();topLeftPath.moveTo(0, mTopLeftRadius);topLeftPath.lineTo(0, 0);topLeftPath.lineTo(mTopLeftRadius, 0);RectF arc = new RectF(0,

2016-10-28 14:46:49 203

原创 Android乱码类型判断

public static void testCharset(String datastr){                try {                        String temp = new String(datastr.getBytes(), "GBK");                        Log.v("TestCharset","*****

2016-10-11 17:16:43 923

原创 View的事件分发机制

View的事件分发1.dispatchTouchEvent返回true,表示该View或者该View的子View或子子VIew中已经处理了事件。反之则表示没有view处理事件。2.onInterceptTouchEvent只有在ViewGroup中才可以调用。返回true表示拦截这个事件自己进行处理,这个事件不会再传递到子view中了。返回false则表示不主动对事件进行处理,除非

2016-09-22 15:46:05 217

空空如也

空空如也

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

TA关注的人

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