安卓手机软件的后台运行到底是个什么原理

如题所述

android基于Linux内核,很多系统也都基于Linux内核。但是android的特别之处除了开发上的特点以外,还有一个就是程序在运行时的行为和以往我接触到的程序运行机制有很大不同。在传统PC机或者其他一些手机上,用户对应用程序有绝对的掌控权,在应用程序的系统菜单上选择逗退出地或者逗关闭地之类的选项会直接杀死进程,而在android系统中不是这样的。在android中,应用程序的生命周期并不是由应用程序自身直接控制的,而是由系统,当系统需要释放内存来运行新进程或者保证某些后台进程和前端进程顺利执行的时候才会释放相应应用程序的资源,这个释放过程有一个重要性的层次。
android中进程的层次如下(重要性由高到低):

1、前端进程。顾名思义,前端进程就是目前显示在屏幕上和用户交互的进程,在系统中前端进程数量很少,而这种进程是对用户体验的影响最大,只有系统的内存稀少到不足以维持和用户的基本交互时才会销毁前端进程。因此这种进程重要性是最高的。

2、可见进程。可见进程也拥有一个可视化的界面,只是目前不是最上层界面(最上层界面在前端进程里面),可见进程一般调用了OnPause(),可见进程比前端进程重要性低,但是在交互方面影响还是很大,因为用户可能随时切换过去,所以系统不会轻易销毁它。

3、服务进程。一个服务进程就是一个Service,它调用了startService,就是UNIX中说的守护进程,对用户不可见,但是保证了一些重要的事件被监听或者维持着某些状态,比如网络数据传输、后台音乐播放,这类进程在内存不足且为了保证前端交互的顺利进行的时候被销毁。

4、后台进程。这里叫后台进程可能会和一般意义上的后台进程混淆,要说明的是,android里的后台进程是调用了OnStop()的,可以理解成用户暂时没有和这个进程交互的愿望,所以这里后台进程有点逗待销毁地的意思。

5、空进程。这是一种系统缓存机制,其实就是个进程的外壳,当有新进程创建的时候,这个空进程可以加快进程创建速度,当系统内存不足的时候,首先销毁空进程。
android中进程重要性层次
温馨提示:内容为网友见解,仅供参考
第1个回答  2017-08-02
手机实现程序后台运行的方法:打开软件后不要点击返回键退出,直接点击Home键,该程序将在系统后台运行。本回答被网友采纳
第2个回答  2017-08-02
你好哦,可以进入设置/开发者选项/不保留活动(或者离开即销毁应用)应用就不能运行了!或者使用360,这需要root权限的。望采纳。谢谢了!