ActivityThread和ApplicationThread Android运行程序的主线程与AMS通讯的桥梁

  • 电脑网络维修
  • 2024-11-15

ActivityThread

ActivityThread是Android系统中担任治理和调度运行程序中Activity的一个关键组件。

实质与配置:

关键职责:

初始化环节:

成员变量和方法:

主线程的关键责任:

ApplicationThread

ApplicationThread是ActivityThread的外部类,是一个Binder对象。ApplicationThread作为IApplicationThread对象的server端,期待client端的恳求而后启动处置,其中最大的client就是AMS。

ApplicationThread在Android运行程序启动环节中表演着关键角色。当ActivityThread的handleBindApplication方法被调用时,会将ApplicationThread与Application对象启动绑定,作为运行程序与系统服务之间启动通讯的桥梁。handleBindApplication方法还会调用Application对象的onCreate方法,这是运行程序启动环节中的第一个回调方法。

在Activity的启动逻辑环节中,ApplicationThread的ScheduleActivity方法会经过一个叫H的Handler发送一个启动Activity的信息。ActivityThread也就是咱们常说的UI线程或主线程,是程序的入口(main函数),保留了运行中一切的对应组件(如优惠、服务和内容提供者等)。

创立根Activity:

Launcher进程向AMS恳求创立根Activity,AMS会判别根Activity所需的运行程序进程能否存在并启动,假设不存在恳求Zygote进程创立运行程序进程。运行程序进程启动后,AMS会恳求运行程序进程创立并启动根Activity。

创立个别Activity:

在运行程序进程中的Activity向AMS恳求创立个别Activity(步骤1),AMS会对这个Activty的生命周期管和栈启动治理,校验(AndroidManifest.xml注册文件申明、启动权限)Activity等等。假设Activity满足AMS的校验,(判别进程存在)AMS就会恳求运行程序进程中的ActivityThread去创立并启动个别Activity。

总结

ApplicationThread是ActivityThread的一个外部类,成功了IApplicationThread接口,是一个Binder接口,用于跨进程通讯(IPC)。ApplicationThread对象作为IApplicationThread的服务端,被AMS等系统服务经过Binder机制启动调用。

ActivityThread是Android运行程序进程的主线程,也就是咱们通常所说的UI线程。每个Android运行程序进程都有一个ActivityThread实例,担任创立和治理运行程序的组件(如Activity、Service、BroadcastReceiver等),并处置与这些组件关系的生命周期事情。

ApplicationThread和ActivityThread是严密关系的。ApplicationThread是ActivityThread的一个外部类,用于处置来自AMS的IPC调用,并将这些调用转换为对ActivityThread中相应方法的调用。AMS经过ApplicationThread与ActivityThread启动通讯,从而治理运行程序的生命周期和组件。

  • 关注微信

本网站的文章部分内容可能来源于网络和网友发布,仅供大家学习与参考,如有侵权,请联系站长进行删除处理,不代表本网站立场,转载联系作者并注明出处:https://duobeib.com/diannaowangluoweixiu/7406.html

猜你喜欢

热门标签

洗手盆如何疏浚梗塞 洗手盆为何梗塞 iPhone提价霸占4G市场等于原价8折 明码箱怎样设置明码锁 苏泊尔电饭锅保修多久 长城画龙G8253YN彩电输入指令画面变暗疑问检修 彩星彩电解除童锁方法大全 三星笔记本培修点上海 液晶显示器花屏培修视频 燃气热水器不热水要素 热水器不上班经常出现3种处置方法 无氟空调跟有氟空调有什么区别 norltz燃气热水器售后电话 大连站和大连北站哪个离周水子机场近 热水器显示屏亮显示温度不加热 铁猫牌保险箱高效开锁技巧 科技助力安保无忧 创维8R80 汽修 a1265和c3182是什么管 为什么电热水器不能即热 标致空调为什么不冷 神舟培修笔记本培修 dell1420内存更新 青岛自来水公司培修热线电话 包头美的洗衣机全国各市售后服务预定热线号码2024年修缮点降级 创维42k08rd更新 空调为什么运转异响 热水器为何会漏水 该如何处置 什么是可以自己处置的 重庆华帝售后电话 波轮洗衣机荡涤价格 鼎新热水器 留意了!不是水平疑问! 马桶产生了这5个现象 方便 极速 邢台空调移机电话上门服务 扬子空调缺点代码e4是什么疑问 宏基4736zG可以装置W11吗 奥克斯空调培修官方 为什么突然空调滴水很多 乐视s40air刷机包 未联络视的提高方向 官网培修 格力空调售后电话 皇明太阳能电话 看尚X55液晶电视进入工厂形式和软件更新方法 燃气热水器缺点代码

热门资讯

关注我们

微信公众号