gpt4 book ai didi

android - 主线程中默认的Looper和handler是什么时候创建的

转载 作者:行者123 更新时间:2023-11-29 20:42:46 25 4
gpt4 key购买 nike

对于主 Activity ,主线程中的循环器和处理程序处理 UI 中的用户输入。既然主 Activity 被授予一个线程,那么循环器和处理程序何时创建?

当它从 UI 接收消息并将其向下传递到主线程时,有没有办法查看底层是如何实现的?

最佳答案

我将尽力解释 Android 在启动应用程序时所经历的基本步骤。这是一个简化的答案。有关详细信息,您可能需要自己阅读 Android 源代码。

让我们从用户在主屏幕上单击您的应用程序的启动器图标开始。我们假设您的应用程序当前未运行:

  • Android 会创建一个操作系统进程来托管您的应用程序(因为您的应用程序还没有正在运行的操作系统进程)。
  • Android 创建主 (UI) 线程并准备 LooperHandler对于该线程并启动 Looper .
  • Android 实例化您的单例 Application对象和调用 onCreate()在那个例子上
  • Android 实例化根 Activity为您的应用程序( list 中具有 ACTION=MAIN 和 CATEGORY=LAUNCHER 的应用程序)并调用 onCreate()在那个例子上
  • Android 现在根据 Android 组件的标准生命周期对您的 Activity 调用各种其他生命周期调用。
  • 曾经是您的 Activity在屏幕上和前台,UI 事件和其他系统事件将被分派(dispatch)到您的应用程序的组件。

通常,除非您显式创建其他线程,否则您的所有代码都将在主 (UI) 线程上运行。

关于android - 主线程中默认的Looper和handler是什么时候创建的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30772414/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com