重看android(二) android启动

来源:互联网 发布:员工培训档案软件 编辑:程序博客网 时间:2024/06/07 07:24

一、线程和进程

1.androiod清单文件中,可以指定某一个组件单独的在一个进程中执行,通过android:process="processName"

2.进程根据优先级依次从高到低分为

前台进程:获得焦点,可以和用户进行交互

可见进程:可见,但无焦点,不响应点击

服务进程:通过startService()开启

后台进程:不可见,被存储在LRU任务列表中,系统可随时终止他们

空进程:缓存进程,缩短启动时间

3.主线程用于绘制界面,当主线程阻塞超过大概5秒,系统会弹出ANR报错

4.进程间通信IPC:android中主要通过RPC(远程调用)的方式如aidl

二、app启动流程(具体看http://www.jianshu.com/p/a5532ecc8377)

1.系统启动时主要通过Zygote(受精卵)进程,Zygote通过开启一个socket端口接受请求。可以创建虚拟机及其他如SystemService等进程,可以加载App通用资源。总的来说它初始化了android系统环境。

2.