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

广西南宁市网站制作公司英文网站推广服务

广西南宁市网站制作公司,英文网站推广服务,做网站建设的电话销售,网上电商平台怎么注册Android系统架构图 1.1 安卓系统启动 1.设备加电后执行第一段代码:Bootloader 系统引导分三种模式:fastboot,recovery,normal: fastboot模式:用于工厂模式的刷机。在关机状态下,按返回开机 键进…

Android系统架构图

1.1 安卓系统启动

1.设备加电后执行第一段代码:Bootloader

系统引导分三种模式:fastboot,recovery,normal:
fastboot模式:用于工厂模式的刷机。在关机状态下,按返回+开机 键进入此模式
recovery模式:用于工程模式的刷机。按 home+开机 键进入此模式
normal模式:正常开机

2.Bootloader初始化CPU和硬件

3.Bootloader装载操作系统映像或者固化的嵌入式应用程序到内存中

4.跳到操作系统的空间,启动操作系统运行

5.Bootloader启动内核和init进程,init进程并发出更多用来处理底层硬件的守护进程

6.init进程启动"Ztgote"进程。接着它启动第一个VM,用来预加载Android的framework和APP需要的通用资源。然后开启一个Socket来监听请求,基于预加载的VM孵化出一个新的VM创建一个新的进程

7.init进程启动"runtime"进程,它启用超级管理进程---System Server。接着SystemServer启动所有系统核心服务,如ActivityManager Service,硬件相关的Service等。

8.操作系统启用第一个App进程---Home进程

1.2 安卓应用启动分析

1  每个应用都是在单独的进程中,被系统分配一个唯一的user id。
2  一个进程,由一个主线程+多条子线程组成。主线程中有一个Looper实例,通过Looper.loop()队列从Message队列中取出Message来做相应的处理。
3  Android的系统界面基本都是由一些Activity组成,在Android系统里,Activity全部放在ActivityStack里管理。而ActivityStack是由ActivityManagerService内部管理的

APP的启动流程:
1  点击应用程序图标,Launcher调用startActivity(intent)
系统启动后,会启动系统应用和用户应用,而Launcher就是一个系统应用,也是有单独的进程

2  Launcher通过Binder IPC机制, 调用到ActivityManagerService
进程与进程直接使用Binder机制来开启应用


3  ActivityManagerService收集intent 信息,验证权限
3.1  第一步通过PackageManager的resolveIntent()收集这个intent对象的指向信息

3.2  指向信息被存储在一个intent对象中

3.3  下通过grantUriPermissionLocked()方法来验证用户是否有足够的权限去调用该intent对象指向的Activity

3.4  如果有权限, ActivityManagerService会检查并在新的task中启动目标activity

4  开启进程,打开应用的LaunchActivity
检查这个进程的ProcessRecord是否存在,如果ProcessRecord是null, ActivityManagerService会创建新的进程来实例化目标activity

创建进程的过程:

1  ActivityManagerService调用startProcessLocked()方法来创建新的进程

2  startProcessLocked方法会通过socket通道传递参数给Zygote进程. Zygote孵化自身, 并调用ZygoteInit.main()方法来实例化ActivityThread对象并最终返回新进程的pid
3  ActivityThread随后依次调用Looper.prepareLoop()和Looper.loop()来开启消息循环

4  将进程和指定的Application绑定。ActivityThread对象中调用bindApplication()方法,该方法发送一个BIND_APPLICATION的消息到
消息队列中, 最终通过handleBindApplication()方法处理该消息, 然后调用makeApplication()方法来加载App的classes到内存中

5  application的进程已存在,现在就是从一个已经存在的进程中启动一个新进程的activity。先是调用realStartActivity(),该方法调用application线程对象中的sheduleLaunchActivity()发送一个LAUNCH_ACTIVITY消息到消息队列中,handleLaunchActivity()会处理该消息,最后调用LaunchActiivity的onCreate来创建界面


1.3 图


文章转载自:

http://HJ0EahUv.nkcfh.cn
http://DnnMGDGp.nkcfh.cn
http://Y9duGGW8.nkcfh.cn
http://nXNosC9E.nkcfh.cn
http://pgAsYRH7.nkcfh.cn
http://grLKYAIV.nkcfh.cn
http://6q7jGb8W.nkcfh.cn
http://kXMvUEop.nkcfh.cn
http://Jq9ngBpF.nkcfh.cn
http://oIUjauK1.nkcfh.cn
http://Qu4KDGCi.nkcfh.cn
http://KuVa1bNZ.nkcfh.cn
http://C012JU3h.nkcfh.cn
http://O2S9nVMy.nkcfh.cn
http://vTcTpKJz.nkcfh.cn
http://aGA75WFq.nkcfh.cn
http://DYgXLXzD.nkcfh.cn
http://xweYxvhZ.nkcfh.cn
http://vCCKXTpC.nkcfh.cn
http://xs03dofR.nkcfh.cn
http://SPE8EEOe.nkcfh.cn
http://GGzHoQZG.nkcfh.cn
http://s9L8Lrds.nkcfh.cn
http://6NTnXGjB.nkcfh.cn
http://IDHh3MwZ.nkcfh.cn
http://AhT66qql.nkcfh.cn
http://B53ehM3t.nkcfh.cn
http://ZjUNpY3b.nkcfh.cn
http://KIRheETx.nkcfh.cn
http://lrwqytzm.nkcfh.cn
http://www.dtcms.com/wzjs/729228.html

相关文章:

  • 网站建设的缺陷中山市网站建站公司
  • 怎么查看网站空间域名查询信息
  • 上海网站优化哪家好精品源码分享的网站
  • 青海旭云网站建设建设银行手机银行网站
  • 网站建设柳市国外服装购物网站大全
  • 湘潭网站建设 搜搜磐石网络网上发帖推广
  • 网站建设jz518云服务器下载
  • 丹东做网站的公司个人软件制作网站源码
  • 南阳百度网站推广东莞seo推广公司
  • 哪个网站做学历认证58同城app下载安装手机版
  • 苏州做网站公司 询苏州聚尚网络石家庄网站外包公司
  • 服装公司网站建设需求分析报告沈阳唐朝网站建设
  • 太原做网站费用网站建设营销的企业
  • 云南网站建设营销旅游商城网站模板免费下载
  • 韩国美食做视频网站有哪些软件公众号开发
  • 网站建设中所涉及的所有链接建设微信商户平台官网
  • 360网站推广官网软件网站建设制作哪家好
  • 个人网站备案需要多久火锅料网站方案怎么做
  • 微信分享网站显示图片呼伦贝尔做网站的公司
  • 外贸网站优化排名设计联盟
  • 安徽省建设协会网站和平东路网站建设
  • 苏州做网站哪家公司好电子商务网站开发文档
  • 网站制作上首页.net网站开发全过程
  • 图片数量 wordpressseo关键词排名优化教程
  • 新手学做网站贸易有限公司
  • 河北辛集住房和城乡建设厅网站购物网站的推广
  • 做织梦网站之前要新建数据库吗长沙sem培训
  • wordpress修改网站标题海口制作网站软件
  • 建设培训网站成都交投成高建设公司网站
  • 304hk 爱站网wap网页编写