位置: 编程技术 - 正文

ActivityManagerService 启动

编辑:rootadmin

推荐整理分享ActivityManagerService 启动,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

文章出处: android SystemServer详解分析了一下systemserver的启动过程,虽然分析下来很多繁琐,可以systemserver却是android启动的第一步,很多service都是在这个进程中启动,这些才是组成android的关键,AMS可以说是android应用的最关键的一个service,传说中的android四大组件就是用它来控制的。我根据源码做一些分析,不足应该很多,希望大神能多指点。

1、AMS最开始涉及到是在systemserver中:

注意code中的注释。

1)AThread

这个是AMS中的static class,为AMS创建了一个thread,区别去system_server进程的main thread,然后为AMS创建一个Looper,然后调用Looper.loop(); 另一个目的是实例化一个AMS。

构造函数就不详细的列出来,可以看一下AMS.java的source code。

一些变量需要注意,mBroadcastQueues(mFgBroadcastQueue、mBgBroadcastQueue)、mServices、mProviderMap四大组件三个在这里出现了,另外一个后期介绍。另外还有其他变量,mBatteryStatsService、mProcessStats、mUsageStatsService、mAppOpsService、mGrantFile、mStartedUsers、mCompatModePackages、mProcessCpuThread等等。

从code看,是在/data/system/下,创建了一些文件来管理android系统一些状态,例如batterystats.bin就是电池状态,接着procstats管理进程的,appops.xml就是app 权限相关的等等,后期会做详细的分析。

2)ActivityThread.systemMain()

ActivityManagerService 启动

主要是ActivityThread.attach():

(1)android.ddm.DdmHandleAppName.setAppName("system_process", UserHandle.myUserId());ddm是Dalvik Debug Monitor缩写,具体干嘛的不清楚,谁指点一下哦?

(2)Instrumentation类

(3)context

context第一次真正出现应该就是这里了:

记一次内存优化的分享 出处:记一次内存优化的分享公司游戏已经进行到最后一个阶段了,经过最后一次引擎升级之后使用的是3.3的版本。以前产品定位的目标是只需要兼容1G

我决定放弃Android开发 很多同学咨询过同样的一个问题,该问题也是最备受争议的问题,那就是到底是选择Android还是选择JavaEE。下面发表一些本人的看法。Android属于一个特有

3行程序搞定SVM分类-用JAVA程序调用LibSVM API 最简单的示例 最近用LibSVM做分类实验,发现网上的资料大都是关于SVM基本原理和怎么用终端命令行使用svm-train,svm-predict等几个程序,这些其实在README文件中已经讲得

标签: ActivityManagerService 启动

本文链接地址:https://www.jiuchutong.com/biancheng/376593.html 转载请保留说明!

上一篇:Android之指南针学习(android指南针源码)

下一篇:记一次内存优化的分享(内存优化有哪些方法)

  • 金税四期可以查个人账户吗
  • 报送会计报表
  • 为什么收不到发票短信?
  • 交通补贴和通讯补贴怎么发合理
  • 以旧换新销售货物的增值税处理
  • 应交税费待抵扣进项税额
  • 考务费属于什么税目
  • 少交了增值税怎么补
  • 货物已到发票未到怎么做账
  • 发票作废税金怎么算
  • 免抵退和免退税哪种划算
  • 个人独资企业是什么意思
  • 办公车辆的燃油费过路费怎么报销?
  • 结转出租包装物的成本
  • 小规模纳税人如何计算增值税
  • 基本户注销帐户余额怎么分配?
  • 卸载软件怎么清理干净
  • 利息收入和利息费用的区别
  • 设备的折旧率是什么意思
  • window10切换win7
  • 收到多开的工程款怎么办
  • sccenter.exe - sccenter是什么进程 有什么用
  • 特许权使用费税前扣除标准
  • 股权激励的账务处理
  • 增值税发票销货清单哪里领
  • transit code
  • 公司转让债务债权协议
  • 可以跨城租车吗
  • unix时间戳长度
  • html-css
  • AI:DeepSpeed Chat(一款帮用户训练自己模型的工具且简单/低成本/快 RLHF 训练类ChatGPT高质量大模型)的简介、安装、使用方法之详细攻略
  • php取值
  • 本期收入及免税收入怎么填
  • 怎么做应收应付账款分录
  • 没有销售收入月报怎么填
  • 预缴的企业所得税怎么做账
  • 网上变更财务负责人
  • 退伍军人企业所得税优惠
  • 数据库管理中负责数据模式定义的数据库语言是
  • 数组和结构体
  • 如何查询以前申请的新西兰签证记录
  • 微小企业开票一天可以开多少钱
  • sql server 2008 2014
  • 注册资金认缴期限一般多少
  • 核定征收的三种方式
  • 计提存货跌价准备计算公式
  • 危废品处理费用会计处理
  • 受疫情影响较大的上市公司有哪些
  • 递延所得税资产怎么计算
  • 差旅费出差补助标准
  • 已计提教育费附加但是未扣除个税
  • 原始凭证和记账凭证的填制
  • 长期股权投资的交易费用计入哪里
  • 购进中央空调可以抵税吗
  • 目前用到的两个字符
  • 通过zeno实现加速屏幕显示操作教程
  • win7总是弹出windows激活
  • linux命令行查找
  • RedHat 9.0下Apache+PHP+MySQL服务器安装配置
  • linux 去除换行
  • win10自动更新win11怎么办
  • win10预览版21337
  • Windows10系统下iis没有注册.netFrameWork4.0的原因
  • 11月 Win8.1 Update 3更新哪些内容?开始菜单依然没有
  • nodejs爬取数据
  • 网页过关类游戏
  • jquery插件使用教程
  • js右键菜单
  • 解决js请求服务问题
  • 原生js实现ajax步骤
  • javascript语言基础
  • python中简单的例子
  • python发邮件代码
  • javascript类定义
  • First class: UI design for Android
  • 安卓点赞脚本
  • 企业间借款合同印花税怎么交
  • 临时增版
  • 小规模和一般纳税人营业执照区别
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设