[Android]Activity启动过程

Android系统启动加载流程:

参考图

  • Linux内核加载完毕
  • 启动init进程
  • init进程fork出zygote进程
  • zygote进程在ZygoteInit.main()中进行初始化的时候fork出SystemServer进程
  • SystemServer进程开启的时候初始化ActivityThreadActivityManagerService(其它还有PowerManagerServiceDisplayManagerServicePackageManagerService
  • 启动LauncherLauncher本质上也是一个App,继承自Activity

App与AMS通过Binder进行IPC通信

启动一个Activity

客户端:ActivityManagerProxy --> Binder驱动 --> ActivityManagerService:服务器

  • ActivityThread
    老板,虽然说家里的事自己说了算,但是需要听从AMS的指挥
  • Instrumentation
    老板娘,负责家里的大事小事,但是一般不抛头露面,听一家之主ActivityThread的安排,每个Activity都有一个Instrumentation引用,整个进程只有一个Instrumentation实例
  • ActivityManagerProxy
    ActivityManagerNative.getDefault().startActivity获取ActivityManagerProxy对象通过Binder IPC与AMS通信
  • AMS
    真正启动一个Ativity(ActivityStackSupervisor, ActivityStack

Resume一个Activity

客户端:ApplicationThread <-- Binder驱动 <-- ApplicationThreadProxy:服务器

  • AMS
  • ApplicationThreadProxy
    ApplicationThreadProxy对象通过Binder IPC与客户端通信。
  • ApplicationThread
  • Handler
  • ActivityThread
  • Activity
    调用onResume方法

AMS(SystemServer进程)与zygote通过Socket进行IPC通信

参考:http://blog.csdn.net/zhaokaiqiang1992/article/details/49428287

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/459555.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CentOS 7 中firewall-cmd命令

在 CentOS 7 暂时开放 ftp 服务# firewall-cmd --add-serviceftp永久开放 ftp 服务# firewall-cmd --add-serviceftp --permanent永久关闭# firewall-cmd --remove-serviceftp --permanentsuccess让设定生效# systemctl restart firewalld检查设定是否生效# iptables -L -n | g…

计算机网络又称国际互联网,Internet属于( )。 A.国际互联网B.内部网C.局域网D.电话网 - 作业在线问答...

相关题目与解析Internet属于()。A.内部网B.局域网C.公用电话网D.国际互联网Internet称为()。A&#xff0e;国际互联网B&#xff0e;广域网C&#xff0e;局域网D&#xff0e;世界信息网INTERNET也称为()。A.局域网B.对等网C.国际互联网D.以太网因特网(Internet)又称A、局域网B、…

substring 在C#,Javascript,SQL 中index开始值

substring函数index参数在三个平台的开始值: 平台index参数开始值C#0Javascript0SQL1转载于:https://www.cnblogs.com/jimcsharp/p/4354192.html

Android的十六进制颜色值

颜色和不透明度 (alpha) 值以十六进制表示法表示。任何一种颜色的值范围都是 0 到 255&#xff08;00 到 ff&#xff09;。对于 alpha&#xff0c;00 表示完全透明&#xff0c;ff 表示完全不透明。表达式顺序是“aabbggrr”&#xff0c;其中“aaalpha”&#xff08;00 到 ff&am…

在线mod计算机,MOD大师教程 手把手教你改造电脑机箱

MOD将代替DIY风靡中国中国的DIY已经从P2时代极少数的用户发展到现在让品牌机头疼不已的庞大用户群体&#xff0c;电脑的DIY已经不能再被说成是一个技术了。那么追求个性的玩家们只能坐以待毙吗&#xff1f;当然不是了&#xff0c;于是MOD在国内也慢慢地兴盛起来。漂亮的机箱主题…

signals系列之一——基本用法

摘自&#xff1a;http://zengrong.net/post/1504.htm转载于:https://www.cnblogs.com/man-li/p/4354201.html

桌面上的文件使计算机变慢吗,电脑用久了会变卡怎么办?让电脑变得流畅方法图解...

工作生活中我们的电脑时间用久了&#xff0c;就会变得很卡&#xff0c;那么如何做会让电脑变得流畅一点呢&#xff0c;小编教大家几招。步骤首先要保持windows桌面整洁&#xff0c;尽量少放一些文件&#xff0c;因为桌面上的文件都是放在C盘&#xff0c;电脑系统一般也是装在C盘…

FetchType与FetchMode的区别

使用例&#xff1a; OneToMany(mappedBy"item",cascadeCascadeType.ALL,fetchFetchType.EAGER) Fetch(valueFetchMode.SUBSELECT) 两者比较&#xff1a; 两者都是设定关联对象的加载策略。前者是JPA标准的通用加载策略注解属性&#xff0c; 后者是Hibernate自有加载…

计算机无线局域网毕业论文,谈教学设计《计算机网络》网络课程“无线局域网”单元的设计与开发大专毕业论文范文...

中文摘要4-5ABSTRACT5-91 引论9-221.1 不足的提出9-101.2 国内外探讨近况10-131.2.1 文献综述10-121.2.2 网络课程建设近况12-131.3 探讨目标以及作用131.3.1 探讨目标131.3.2 探讨作用131.4 探讨的策略13-141.5 探讨的思路14-221.5.1 任务驱动教学法15-181.5.2 MOODLE 平台介绍…

单例模式到Java内存模型

先说单例模式&#xff1a; 经典的单例模式实现&#xff1a; 饿汉式&#xff1a; public class Singleton {private static Singleton instance new Singleton();public static Singleton getInstance(){return instance;} } 懒汉式&#xff1a; public class Singleton {priva…

html 转word c#,c#操作word类,进行html和word文档的互相转换

#region 把Word文档装化为Html文件/** ///把Word文档装化为Html文件/// /// 要转换的Word文档public static void WordToHtml( stringstrFileName ){string saveFileName strFileName DateTime.Now.ToString( "yyyy-MM-dd-HH-mm-ss" ) ".html";WordToHt…

poj 1276 多重背包

735 3 4 125 6 5 3 350    //735的最大额&#xff0c;3种&#xff0c;4个125,6个5,3个350 633 4 500 30 6 100 1 5 0 1 735 0 0 3 10 100 10 50 10 10 735 630 0 0 1 #include<cstdio>2 #include<iostream>3 #include<algorithm>4 #include<…

《深入剖析Tomcat》阅读(三)

这里要介绍下Tomcat的一个重要设计方法&#xff0c;Catalina设计方式。 Servlet容器是一个复杂系统&#xff0c;但是&#xff0c;它有三个基本任务&#xff0c;对每个请求&#xff0c;servlet容器会为其完成以下三个操作&#xff1a; 1.创建一个Request对象&#xff0c;用可能会…

美图秀秀计算机教程,美图秀秀怎么抠图 美图秀秀抠图详细教程

怎么抠图&#xff1f;这是很多人在进行图片处理过程中经常处理的问题。对于那些专业人士来说&#xff0c;他们大多数用的是PS软件。但是对于绝大多数没有接触过PS的小白来说&#xff0c;怎么抠图成为了一大难题。其实&#xff0c;用过美图秀秀这款软件的朋友来说&#xff0c;它…

磁盘及文件系统的管理

分区是为了创建文件系统MBR&#xff1a;创建分区后&#xff0c;为了能够快速的存取文件就有了文件系统inode&#xff1a;中存储了文件属组&#xff0c;等与文件数据没有关系的文件属性信息&#xff0c;但是没有文件名每次访问某个目录的文件时是会进行缓存的&#xff0c;在一定…

今天升级win10.vs调试程序各种崩溃

今天升级win10.vs调试程序各种崩溃。感觉代码没问题。崩溃时有时没有。不知道是win10的问题&#xff0c;好真是我的代码问题。 问题1&#xff1a; 尝试读取或写入受保护的内存。这通常指示其他内存已损坏 不过。当我写这个文章时。想要重现一下。却又不出现了。 转载于:https:/…

计算机控制分离性原理是什么,(第12讲)状态观测器和分离原理.ppt

《(第12讲)状态观测器和分离原理.ppt》由会员分享&#xff0c;可在线阅读&#xff0c;更多相关《(第12讲)状态观测器和分离原理.ppt(26页珍藏版)》请在人人文库网上搜索。1、现代控制理论,(第10讲 2007年12月) 状态观测器 带观测器的闭环系统 分离原理 自动化教研室 谭功全,状态…

Cocos2d-x 3.8.1+Cocos Studio 2.3.2捉虫记之控制场景文件中的骨骼动画

Cocos2d-x 3.8.1Cocos Studio 2.3.2捉虫记之控制场景文件中的骨骼动画引子这段时间一直努力在把早期版本的拇指接龙游戏&#xff08;Cocos2d-x 2.2.3CocoStudio 1.4.0.1&#xff09;升级到当前相对稳定的高大上环境——Cocos2d-x 3.8.1Cocos Studio 2.3.2。行程中遇到不少麻烦&…

用JSmooth制作java jar文件的可运行exe文件教程【图文】

这是我之前在个人博客3yj上面写的一篇文章&#xff0c;如今转载过来&#xff0c;原文地址 &#xff08;这不是广告哦&#xff09; 几年前&#xff0c;刚接触java的是&#xff0c;就想用一些方法把自己的劳动果实保护起来&#xff0c;曾经也用过非常多这种工具&#xff0c;有一个…

全国计算机vb考试经典程序设计,全国计算机二级《VB语言程序设计》考试要点...

全国计算机二级《VB语言程序设计》考试要点VB语言程序设计是计算机二级考试的科目之一&#xff0c;考生们在备考是要熟悉科目的知识要点&#xff0c;有针对性地进行备考。下面百分网小编为大家搜索整理了关于二级《VB语言程序设计》考试要点&#xff0c;欢迎参考练习&#xff0…