自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 资源 (1)
  • 收藏
  • 关注

原创 Android9.0 Activity启动流程分析(三)

文章目录1、Android屏幕层级1.1、Window和PhoneWindow的概念1.2、View和ViewRootImpl的概念2、ClientLiftCycleManager3、handleLaunchActivity3.1、CreatActivity3.2、setContentView4、handleResumeActivity  本篇内容主要讲Window的描绘流程,在讲代码之前我们先了解一些基本概念。1、Android屏幕层级PhoneWindow窗口的具体实现,譬

2018-12-08 14:42:29 3086 1

原创 Android9.0 Activity启动流程分析(二)

文章目录1、ActivityThread的main函数2. AMS的attachApplication函数2.1 Part-I2.2 Part-II2.2.1 ApplicationThread的bindApplication函数2.3 Part-III  在Android9.0 Activity启动流程分析(一)中,我们最终分析到AMS通过zygote启动Activity对应的进程,接下来继续...

2018-12-08 14:39:08 1984 1

原创 Android9.0 Activity启动流程分析(一)

一、am命令我们将利用am命令启动一个Activity,来分析Activity的启动流程。am start -W -n com.android.settings/com.android.settings.Settings-W:表示等待目标activity启动的返回结果-n :后接component name用于指定启动的Activity在shell中输入如上命令之后会得到如下返回结果...

2018-12-05 15:41:09 6309 3

原创 Android跨进程通信Binder原理分析(二)

文章目录1 Binder源代码分析1.1 Service的注册流程1.2 Service的获取流程1.3 Service的使用流程1 Binder源代码分析1.1 Service的注册流程    Android 系统中将大量的核心服务以 Service 的形式来对外提供,Service 只有注册到 ServiceManager 后,Client 端才能通过 ServiceManager 获取...

2018-10-19 15:48:48 303

原创 Android跨进程通信Binder原理分析(一)

文章目录1. Linux进程基础1.1 进程隔离1.2 用户空间/内核空间1.3 系统调用/内核态/用户态1.4 内核模块/驱动1.5 图解2. Binder的Client/Server通信模型3. 为什么要使用Binder3.1 安全方面3.2 性能方面(一次数据拷贝)1. Linux进程基础  大家都知道Android是基于Linux内核的操作系统,在学习Binder通信之前需要了解一些L...

2018-10-19 15:31:40 526

原创 Android消息机制Handler原理分析

文章目录App中Handler的使用App中Handler的使用我们都知道,AndroidUI是线程不安全的,如果在子线程中尝试进行UI操作,程序就有可能会崩溃。相信大家在日常的工作当中都会经常遇到这个问题,解决的方案应该也是早已烂熟于心,即创建一个Message对象,然后借助Handler发送出去,之后在Handler的handleMessage()方法中获得刚才发送的Message对象...

2018-10-11 17:05:11 331

原创 JAVA多线程安全的三大特性 + synchronized和volatile

线程安全的三大特性  在并发编程中,我们通常会遇到以下三个问题:原子性问题,可见性问题,有序性问题。我们先看具体看一下这三个概念:1. 原子性  原子性是指一个操作或者多个操作要么全部执行并且执行的过程不会被任何因素打断,要么就都不执行。  先来看一个例子:使用程序实现一个计数器,期望得到的结果是10000,代码如下:import java.util.concurrent.Executo...

2018-10-10 17:11:58 3033 1

Android 9.0 AMS & WMS LOGS

用于理解Android9.0源码而添加的一些logs,基于"android-9.0.0_r8"分支

2018-11-12

空空如也

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

TA关注的人

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