android的5个进程等级
1、Foreground Process (前台进程)
a 正处于Activity Resume()状态
b 正处于与bound服务交互的状态
c 正处于服务在前台的状态,(startForeground()被调用)
d Service生命周期函数正在被执行(onCreate(),onStart(),onDestroy())
e BroadcastReceiver正在执行onReceive()方法
杀死Foreground Process需要用户响应,因为这个安全优先级是最高的。
2、Visible Process
Activity不在前台显示,但也没有隐藏,能够看的见,比如弹出一个对话框 (input Method)
一个bound到visible或者foreground的activity的Service ,或者是一个输入法
3、Service Process
正在运行的,不在上述两种状态的Service
4、Background Process
不可见状态的Activity进程,onStop()被调用
5、Empty Process
没有运行任何Components的进程,保留这个进程主要是为了缓存的需要。
Manifest的作用及使用举例
1、包的唯一指定名
2、Android四大组件的定义:Activity,Service,Broadcast Receiver,Content Provider
3 、定义应用程序具备的权限
4、 定义Instrumention做自动化测试
5、 定义应用程序需要的最小API版本号
6、 列出应用程序所需要的类库
Manifest是如何解析的?
1、系统启动的时候,PackageManageService读取Manifest信息
2、应用程序启动的时候,Launcher进行系统级别的判断,例如最小的SDK
3、四大组件在需要的时候实例化