Android

Android

android桌面的启动和进程的创建流程

android桌面的启动和进程的创建流程

之前几篇文章,我们分析了从init进程到zygote进程,再到systemServer进程的启动流程。我们在systemServer进程的结尾说到了将要开始启动桌面。这篇文章我们就接着systemServer的结尾开始从启动桌面讲起。另外之前我们分析zygote进程的时候有分析到zygote进程中会

2023-10-27
495 0
android启动之SystemServer进程

android启动之SystemServer进程

在分析zygote进程的第一篇文章里面,我们讲到了ZygoteInit进程中还有三个方法(没看过第一篇的同学可以先看第一篇文章哦,android启动之zygote进程(一))

2023-10-24
246 0
android启动之zygote进程

android启动之zygote进程

在android启动之zygote进程这篇文章中我们分析了android的init进程的启动流程,那里我们分析了init进程启动开始,解析了init.rc文件,然后执行了其中的命令,最终通过调用service命令来启动了zygote进程。zygote进程,从名字看受精卵的意思,我们后面分析代码就可以

2023-10-21
586 0
android启动之init进程

android启动之init进程

从这篇文章开始,准备讲一讲android启动方面的流程。我们知道android是基于linux操作系统来开放的,所以它开始的启动流程和linux也是一样的,但是在加载完内核后,就开始android自己的一套东西。对于linux来说,他启动的时候,首先会有引导流程,引导流程和具体的硬件体系有关,比如x

2023-10-19
485 0
Service源码分析(三)

Service源码分析(三)

前面两篇文章把start servie和bind service的流程分析了一遍,这篇文章准备说一说stop service,不过一般我们平时开发中特地去stop service的情况不多,既然service运行起来了,干嘛还干掉他,大多数情况下我们还巴不得service能一直活着呢,所以各种保活的

2023-10-10
611 0
Service源码分析(二)

Service源码分析(二)

前面第一篇service源码的分析文章我们分析了startService在一个service已经启动的情况下执行的整个流程,在分析的过程中我们还看到了在进程存在但是service还不存在以及进程也不存在的情况下的执行流程,我们这篇文章就来分析下这两种情况。首先分析了进程存在但是service还创建的

2023-10-07
509 0
AMS源码分析(五)

AMS源码分析(五)

前四篇文章通过启动一个Activity,把AMS的启动流程分析了一遍。虽然说只是启动流程,但是也包含了大多数的Activity的生命周期方法,所以想onCreate,onStart,onResume,onPause等等方法我们都已经看到了。剩下还有个onDestory的销毁方法我们还没说过,所以这篇

2023-09-29
477 0
AMS源码分析(四)

AMS源码分析(四)

上一篇文章讲到了新建一个进程,在新建完进程后会回调到android.app.ActivityThread的main方法,这篇文章就从main方法开始讲。先看下main方法的代码:public static void main(String[] args) {.....................

2023-09-27
488 0
AMS源码分析(三)

AMS源码分析(三)

上一篇文章我们讲到了寻找复用的任务栈,那么到目前为止不论存不存在复用的任务栈,我们接下去的处理其实都是统一的,现在我们就继续按照源码走下去。// 待启动的Activity包名空,返回 if (mStartActivity.packageName == null) {

2023-09-26
602 0