当前位置: 首页 > wzjs >正文

泸西县建设小学网站一个app费用多少钱

泸西县建设小学网站,一个app费用多少钱,合肥营销网站建设价格,扁平式的网站应用进程 1.1 Android系统进程的启动过程: 1、init进程fork出Zygote进程后,Zygote进程会创建一个服务端socket,等待AMS发起socket请求。 同时,由Zygote进程fork出的SystemServer进程会启动各项系统服务,其中就包含了A…

应用进程

1.1 Android系统进程的启动过程:

1、init进程forkZygote进程后,Zygote进程会创建一个服务端socket,等待AMS发起socket请求。

同时,由Zygote进程fork出的SystemServer进程会启动各项系统服务,其中就包含了AMS,AMS会启动Launcher桌面,此时就可以等待用户点击App图标来启动应用进程了。

2、然后看下系统服务的启动,不管是由init进程启动的独立进程的系统服务SurfaceFlinger,还是由SystemServer进程启动的非独立进程的系统服务AMS,都是在ServiceManager进程中完成注册和获取的,在跨进程通信上使用了Android的binder机制

ServiceManager进程本身也是一个系统服务,经过启动进程启动binder机制发布自己等待请求4个步骤,就可以处理其他系统服务的获取和注册需求了。

1.2  Android系统服务的启动过程:

1.3 AMS发送socket请求

Android应用进程的启动是被动式的,在Launcher桌面点击图标启动一个应用的组件如Activity时,如果Activity所在的进程不存在,就会创建并启动进程。

点击App图标后经过层层调用会来到ActivityStackSupervisor的startSpecificActivityLocked方法,

//ActivityStackSupervisor.java
final ActivityManagerService mService;void startSpecificActivityLocked(...) {//查找Activity所在的进程,ProcessRecord是用来封装进程信息的数据结构ProcessRecord app = mService.getProcessRecordLocked(...);//如果进程已启动,并且binder句柄IApplicationThread也拿到了,那就直接启动Activityif (app != null && app.thread != null) {realStartActivityLocked(r, app, andResume, checkConfig);return;}//否则,让AMS启动进程mService.startProcessLocked(...);
}

app.thread并不是线程,而是一个binder句柄。应用进程使用AMS需要拿到AMS的句柄IActivityManager,而系统需要通知应用和管理应用的生命周期,所以也需要持有应用进程的binder句柄IApplicationThread。

也就是说,他们互相持有彼此的binder句柄,来实现双向通信

所以对于AMS来说,

  1. AMS向Zygote发起启动应用的socket请求,Zygote收到请求fork出进程,返回进程的pid给AMS;
  2. 应用进程启动好后,执行入口main函数,通过attachApplication方法告诉AMS已经启动,同时传入应用进程的binder句柄IApplicationThread。

完成这两步,应用进程的启动过程才算完成。

1.3.1 流程图

综上,Android应用进程的启动可以总结成以下步骤:

  1. 点击Launcher桌面的App图标
  2. AMS发起socket请求
  3. Zygote进程接收请求并处理参数
  4. Zygote进程fork出应用进程,应用进程继承得到虚拟机实例
  5. 应用进程启动binder线程池、运行ActivityThread类的main函数、启动Looper循环

1.4 总图 

1.4.1 系统启动流程图自绘

1.4.2应用启动流程图


文章转载自:

http://k9se2BLi.wxbsq.cn
http://9IOUG4bg.wxbsq.cn
http://Cla2Jr5a.wxbsq.cn
http://fVprjukq.wxbsq.cn
http://2g8OLlsS.wxbsq.cn
http://DszQoR3R.wxbsq.cn
http://CPKpjTW4.wxbsq.cn
http://1uNBApWk.wxbsq.cn
http://GHEYOphu.wxbsq.cn
http://qMGFbopW.wxbsq.cn
http://46pzYo4L.wxbsq.cn
http://WpvDoWGb.wxbsq.cn
http://QuW0beJC.wxbsq.cn
http://vifbJkNi.wxbsq.cn
http://zPzRs6D2.wxbsq.cn
http://Xt3EKMRp.wxbsq.cn
http://UVJtvDEy.wxbsq.cn
http://ugTYVfXm.wxbsq.cn
http://ytZI7tGT.wxbsq.cn
http://tRcjIfrz.wxbsq.cn
http://z2mFD6vB.wxbsq.cn
http://RqKpWN4S.wxbsq.cn
http://M3rYOv9w.wxbsq.cn
http://KoUm9MTm.wxbsq.cn
http://9PEDI73f.wxbsq.cn
http://rDPTKYe9.wxbsq.cn
http://XNJfV09M.wxbsq.cn
http://wbwtFuvk.wxbsq.cn
http://X9g0lBQ0.wxbsq.cn
http://gNIQtRFn.wxbsq.cn
http://www.dtcms.com/wzjs/724090.html

相关文章:

  • 微信的微网站是什么农家乐网站源代码
  • 网站开发实战 课程莱芜东风街吧百度贴吧
  • 吉林市建设局网站网站建设中文百
  • 只有域名如何做网站汝州网站建设
  • 企业网站建设该怎么描述中国商品交易网
  • 公司做的网站访问很慢开锁行业在58做网站有活吗
  • 住房和城乡建设部科技发展促进中心网站如何查看网站域名
  • 做网站代运营如何寻找客户工商局官网登录入口
  • 昆明网站建设案例注册集团公司需要什么条件
  • 比较好网站设计公司定制网站设计高端网站建设
  • 重庆工业网站建设php网站源码建设教程
  • 个人网站名字建设银行手机银行官方网站
  • 怎么做网站建设销售哪个网站可以做简历
  • 网站吸流量做请帖的网站
  • ppt效果网站庄河城乡建设管理局网站
  • 网站建网站建设网站 管理系统
  • 权威的锦州网站建设参考网是合法网站吗?
  • 网站备案那个省份推广网站排名
  • 阜阳企业网站推广做网络推广选择哪个网站好
  • 本地化网站建设网页设计师考证
  • wordpress怎样显示子类目网站的标题优化怎么做
  • 外国小孩和大人做网站宜昌外贸网站建设优化推广
  • 百度站长工具对seo的帮助阿克苏建设网站
  • 台州网站推广湖南长沙理工大学
  • 淘客做网站有必要吗软件开发网站模板
  • 赫山区网站建设wordpress ftp上传插件
  • 电脑培训学校学费多少wordpress模版seo
  • 沈阳企业自助建站wordpress所有文章新窗口打开
  • 关于申请网站建设维护经费网站建设违约责任条款
  • 网站手机版建设局网站管理办法