2021-10-18 Android 应用程序的入口ActivityThread简单分析

一、ActivityThread其实就是我们经常说的UI thread,也就是主线程。我们都知道主线程可以使用Handler进行异步通信,因为主线程中已经创建了Looper,而这个Looper就是在这里创建的。如果其他线程需要使用Handler通信,就要自己去创建Looper。

二、Android应用程序作为一个控制类程序,跟Java程序类似,都是有一个入口,而这个入口就是ActivityThread,ActiviyThread也有一个main方法,这个main方法是APP真正的入口。\frameworks\base\core\java\android\app\ActivityThread.java

2021-10-18 Android 应用程序的入口ActivityThread简单分析_第1张图片

 三、打开一个app,然后看一下关于ActivityThread的log,从log上看,打开一个activity后,执行onCreate之前会调用ActiviyThread里面的main,然后调用performLaunchActivity里面的callActivityOnCreate,最后才调用activity里面的onCreate。

2021-10-18 Android 应用程序的入口ActivityThread简单分析_第2张图片

2021-10-18 Android 应用程序的入口ActivityThread简单分析_第3张图片

 

2021-10-18 Android 应用程序的入口ActivityThread简单分析_第4张图片

 四,大概的调用流程如下

2021-10-18 Android 应用程序的入口ActivityThread简单分析_第5张图片

参考文章

Android 根Activity流程简单整理 - 简书

Android的Activity启动流程分析_idaretobe的专栏-CSDN博客_activity 启动流程

【Android】 01. APP 进程启动和 ActivityThread 的关系_weixin_34007291的博客-CSDN博客

Activity启动分析(一)--ActivityThread_专注Android开发-CSDN博客

你可能感兴趣的:(Android,android)