本文主要是介绍App进程的Application创建、启动过程源码解析(Android P),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在用户手机上,一个App的启动通常是由用户点击Launcher上的图标来启动的。App启动时的起点在哪里?Application对象又是如何创建的呢?
接下来我们通过Android P的源码来分析具体实现过程,解开我们的疑问。
进程的启动过程及Application对象的创建过程分析
一个App系统发起启动命令,一直到启动起来,它的第一步就是要启动一个App所对应的进程,该进程承载了我们将要运行的业务。
ActivityThread的main()方法和attach()方法
ActivityThread在我们的Android系统中,是一个非常重要的类,它同时也代表了我们App运行所对应的主线程。那么一个进程启动,就是从ActivityThread类的main函数开始的。
代码位置:/frameworks/base/core/java/android/app/ActivityThread.java
入口函数main
ActivityThread在App启动及运行过程中一个非常重要的类。ActivityThread的main方法是App的入口方法,ActivityThread代表了App的主线程或UI线程。
public static void main(String[] args) {……Process.setArgV0("<pre-initialized>"); //设置进程参数Looper.prepareMainLooper();……ActivityThread thread = new ActivityThread();
这篇关于App进程的Application创建、启动过程源码解析(Android P)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!