Android framework系列5-应用UIWMS
创始人
2025-05-30 12:53:56
0

1、setContentView

https://note.youdao.com/s/OuSE1jy2
在这里插入图片描述
我们应用的UI结构如上图所示,主要包含了3要素,Activity、Window、View。通过Android studio的Layout Inspector也可以看到:
在这里插入图片描述
所有的View都是通过window显示出来的,window则是通过wms来管理的。

2、app启动之AMS&WMS

https://note.youdao.com/s/Lai9zUGe
在这里插入图片描述
APP启动分析:
1、ActivityThread.main()是在JNI层通过反射调用。
2、一个进程如果一直或者就必须要进入死循环,我们看main函数中的最后调用了Looper.loop(),这个方法就是一直循环
在这里插入图片描述
3、进程间都是通过binder进行通信,通过上面的图可以看到,Launcher启动app是通过AMS来启动的,AMS和APP通信就必须要拿到APP的Binder,所以每个app在启动时都会注册自己的binder到AMS中,具体代码如下:
ActivityThread.main()
在这里插入图片描述
在这里插入图片描述
其中mAppThread是一个stub:
在这里插入图片描述
在这里插入图片描述
mgr.attachApplication 中的mgr就是AMS,继续跟进方法:
在这里插入图片描述

相关内容

热门资讯

栈和队列oj题自测 1.LeetCode225 用队列实现栈 解题思路: 此题可以用两个队列去实现一个栈...
DETR源码学习(二)之模型训... 前面在完成了DETR模型的构建后,我们接下来便是进行数据集构造与模型训练了࿰...
美国加州州长:美国政府“违法”... 美国加利福尼亚州州长加文·纽森在5月30日播出的一档节目中批评联邦政府“单边”且“非法”的关税政策,...
第一个 Django 应用 1. 创建项目 1.1 新建项目 首先新建一个项目,名为 mysite,...
经典卷积模型回顾32—利用YO... YOLOv3(You Only Look Once version 3,...
70. 爬楼梯 70. 爬楼梯 总结 easy题。 题目形成的数列正好是斐波那契数列,答案要求的f(...
端午节假期,石家庄市动物园免票... 端午节撞上儿童节,去哪遛娃儿?别着急,近日,石家庄市动物园依托自有文创品牌“石动萌主”,精心策划并推...
上海警方通报共享单车坐垫内有情... 央广网上海5月31日消息(记者郑晓蔚 见习记者何智康)近日,上海一网友称,哈啰共享单车坐垫内有成人情...
【操作系统复习】第2章(Par... 第2章(Part II)进程的描述与控制冯诺依曼体系结构:...
Web前端学习:章四 -- J... 106:for循环深入 1、标准格式: for(初始化条件;判断条件;迭...