android AMS中主要的四个函数的作用

1AMS的main函数:创建AMS实例,其中最重要的工作是创建Android运行环境,得到一个ActivityThread和一个Context对象。

2AMS的setSystemProcess函数:该函数注册AMS和meminfo等服务到ServiceManager中。另外,它为SystemServer创建了一个ProcessRecord对象。由于AMS是Java世界的进程管理及调度中心,要做到对Java进程一视同仁,尽管SystemServer贵为系统进程,此时也不得不将其并入AMS的管理范围内。

3 AMS的installSystemProviders:为SystemServer加载SettingsProvider。

4 AMS的systemReady:做系统启动完毕前最后一些扫尾工作。该函数调用完毕后,HomeActivity将呈现在用户面前。

对AMS 调用轨迹分析是我们破解AMS的第一条线,希望读者反复阅读,以真正理解其中涉及的知识点,尤其是和Android运行环境及Context相关的知识。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Android AMS(Activity Manager Service)和WMS(Window Manager Service)是两个核心系统服务,它们之间的交互主要通过Binder IPC(Inter-Process Communication)实现。以下是一些与AMS和WMS交互的函数和类: 1. ActivityManagerService类:这是AMS的实现类,提供了许多与Activity和Activity生命周期相关的函数。其一些函数包括: - startActivity(Intent intent, Bundle options):启动一个Activity。 - resumeAppSwitches():通知AMS恢复应用程序切换。 - moveTaskToFront(int taskId, int flags, Bundle options):将指定的任务移动到前台并重新启动它。 2. WindowManagerService类:这是WMS的实现类,提供了许多与窗口管理相关的函数。其一些函数包括: - addView(View view, WindowManager.LayoutParams params):向窗口管理器添加一个视图。 - removeView(View view):从窗口管理器移除一个视图。 - performLayout():执行窗口的布局操作。 3. ActivityManagerNative类:这是AMS的远程代理类,用于实现AMS的远程调用。其一些函数包括: - getDefault():获取AMS的远程代理实例。 - startService(IApplicationThread caller, Intent service, String resolvedType, int userId):启动一个服务。 4. WindowManagerGlobal类:这是WMS的全局类,提供了全局访问WMS的接口。其一些函数包括: - getWindowManagerService():获取当前进程的WMS实例。 - addView(View view, WindowManager.LayoutParams params, Display display, Window parentWindow):向指定的显示器和窗口添加视图。 这些函数和类是与AMS和WMS交互的一些基本元素,用于管理应用程序的生命周期和窗口显示。开发人员可以使用它们来创建和管理Android应用程序的界面。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值