包含android后台的词条
安卓手机后台程序无法关闭怎么办
其实Android系统设计的理念就是要淡化用户对后台的管理,手机资源的分配完全交给系统就可以。Android会设定一个阈值,这个阈值默认设置的非常小,所以我们所看到内存剩余量也会很少,事实上并不会影响手机的速度。下面是我收集整理的安卓手机后台程序无法关闭怎么办,欢迎阅读。
成都创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站建设、做网站、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的安阳县网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
安卓手机后台程序无法关闭怎么办
关于Android的后台一直关不掉的问题,其实完全是因为Android的广播机制。简单来说,当用户安装某一个程序的时候,系统会像面试官一样把这个程序的功能记录下来,当用户在使用手机时,系统状态的变化会产生各种事件,这些事件需要一些程序来处理的时候,系统会发送广播消息,而这些能处理这件事的程序会被启用,究竟是用哪一个程序,这个是由系统默认的程序或者由用户选择的程序来处理这个事件。
举个例子:就如同你开了一家公司,Android是你的管家,那些程序则是来你这里应聘的职工,管家会记录这些职工的能力,例如A会搓澡,B会大保健。当你想要搓澡的时候,管家会叫A过来帮你搓澡。当你想要大保健的时候,管家会叫B过来给你做个大保健。哪怕这个程序是在休眠中,也会被叫起来。也就是不管你怎么去关闭这些应用程序,当需要它的时候,它就是一颗螺丝钉,哪里需要哪里钉。
当然还有一些你不需要的程序也一直在自启动,这是因为利益的原因,国内的很多流氓软件都改变了自身程序的优先性,外加增加了终止其他程序的权限,还有增加守护进程的功能,当检测到自己人被干掉了,直接一个复活术让这个程序满血满蓝原地复活。而另外一些社交软件则是为了保证能够及时推送消息,也会做出一些优先权的改变。
如果运行内存大,是不是就不需要关闭了?
其实Android系统设计的.理念就是要淡化用户对后台的管理,手机资源的分配完全交给系统就可以。Android会设定一个阈值,这个阈值默认设置的非常小,所以我们所看到内存剩余量也会很少,事实上并不会影响手机的速度,而且它有一个自己的规则来回收这些内存,当内存使用达到临界值的时候,再次打开另一个程序系统会选择一些重要性比较低的程序关闭来腾出内存给这个程序运行。
而我们之所以感觉手机在打开某个大型程序会慢的原因就是当你打开这个程序的时候,这个程序会向系统申请内存,由于系统不会关闭所有的进程,只是选择性的去关闭,所以会调动大量的系统资源进行操作,自然也就会拖慢系统。改变系统的阈值会改善很多,但是也可能会带来一些问题。
所以,后台的程序本身就不需要关闭,如果当你运行某个大型程序的时候可以去手动关闭,这样可以显著的提高速度,而平常使用的时候则不需要去管它。至于内存的大小,这个除非你内存大到一定程度,否则你安装N多APP早晚又会达到这个阈值的。
关闭手机后台运行程序
方法一、在应用上退出程序
现在很多软件游戏在退出后是不会在后台继续运行的,像这类应用我们只需在应用界面点击手机“返回键”两次即可退出,或者在应用设置处点击退出即可。
方法二、在手机设置里关闭程序
如果手机应用在前台关闭后仍然会运行,您也可以在手机设置里对程序进行关闭。
1、在手机“设置”里找到“应用程序”,在应用列表里找到该应用,如下图所示。
2、点击应用图标打开设置页面后点击“强行停止”即可。
方法三、用第三方软件关闭程序
现在很多手机管理软件都有关闭程序的功能,像360手机卫士、腾讯手机管家、高级任务管理器之类的软件都可以实现。这里就以360手机卫士为例为大家讲解一下。
1、打开360手机卫士,在“手机加速”里找到“内存清理”并点开,如下图所示。
2、在“内存清理”页面选择需要清理的应用进程,有些如百度输入法这类常用的软件可以不用清理,然后选择“一键清理”即可,如下图所示。
3、此外360手机卫士安装后在手机屏幕上会有个如下图显示所占内存百分比的小图标,点击打开小窗口,点击某个会关闭该应用,也可以点击“一键清理”关闭所有前台应用。
手机中有些小软件占用的内存是很小的,对于这些软件如果用户常用的话是不需要去关闭其后台程序的,这样能加快您下次启动该软件的时间,增加用户体验。而对于占内存比较大的软件游戏,我们可以手动对其进行关闭,保障系统运行的流程,也能节省手机电量。
强制结束关闭后台
首先是打开"设置",然后找到"应用程序"点击进入,找到"管理应用程序"后点击,进入"正在服务的程序"选项,找到想结束的程序进入后点击"强制结束"即可。
安卓手机的软件是怎样在后台运行的?
安卓android后台的软件自动启动程序 - 使用android手机必读(精华中的精华)2011-08-25 16:06不用在意剩余内存的大小,其实很多人都是把使用其他系统的习惯带过来来了。android大多应用没有退出的设计其实是有道理的,这和系统对进程的调度机制有关系。如果你知道java,就能更清楚这机制了。其实和java的垃圾回收机制类似,系统有一个规则来回收内存。进行内存调度有个阀值,只有低于这个值系统才会按一个列表来关闭用户不需要的东西。当然这个值默认设置得很小,所以你会看到内存老在很少的数值徘徊。但事实上他并不影响速度。相反加快了下次启动应用的速度。这本来就是android标榜的优势之一,如果人为去关闭进程,没有太大必要。特别是使用自动关进程的软件。(这里解决了大家非要关进程的误区!)
到这里有人会说了,那为什么内存少的时候运行大型程序会慢呢?其实很简单,在内存剩余不多时打开大型程序,会触发系统自身的调进程调度策略,这是十分消耗系统资源的操作,特别是在一个程序频繁向系统申请内存的时候。这种情况下系统并不会关闭所有打开的进程,而是选择性关闭,频繁的调度自然会拖慢系统。所以,论坛上有个更改内存阀值的程序可以有一定改善。但改动也可能带来一些问题,取决于值的设定。
那么,进程管理软件有无必要呢?有的。就是在运行大型程序之前,你可以手动关闭一些进程释放内存,可以显著的提高运行速度。但一些小程序,完全可交由系统自己管理。
谈到这里,可能有的朋友会问,如果不关程序是不是会更耗电。我就说说android后台的原理,你就明白了。android的应用在被切换到后台时,它其实已经被暂停了,并不会消耗cpu资源,只保留了运行状态。所以为什么有的程序切出去重进会到主界面。但是,一个程序如果想要在后台处理些东西,如音乐播放,它就会开启一个服务。服务可在后台持续运行,所以在后台耗电的也只有带服务的应用了。这个在进程管理软件里能看到,标签是service。至于广播什么的我就不涉及了。所以没有带服务的应用在后台是完全不耗电的,没有必要关闭。这种设计本来就是一个非常好的设计,下次启动程序时,会更快,因为不需要读取界面资源,何必要关掉他们抹杀这个android的优点呢?(告诉我们如何合理使用进程管理软件)
还有一个,为什么android一个应用看起来那么耗内存。大家知道,android上的应用是java,当然需要虚拟机,而android上的应用是带有独立虚拟机的,也就是每开一个应用就会打开一个独立的虚拟机。这样设计的原因是可以避免虚拟机崩溃导致整个系统崩溃,但代价就是需要更多内存。(跟塞班也不一样,案桌不容易死机重启)
以上这些设计确保了android的稳定性,正常情况下最多单个程序崩溃,但整个系统不会崩溃,也永远没有内存不足的提示出现。大家可能是被windows毒害得太深了,总想保留更多的内存,但实际上这并不一定会提升速度,相反却丧失了程序启动快的这一系统特色,很没必要。大家不妨按我说的习惯来用用这个系统。
安卓手机关闭后台应用方法 如何彻底退出后台应用
若使用的是vivo手机,可以从屏幕底部中间往上滑后停顿调出后台应用(部分机型需点击左键),按住软件图标上滑,即可关闭后台运行的应用。
Android 如何最大限度的保活后台进程
前言:本文将通过两种方式,在手机亮屏和屏锁状态下联合对进程进行保活。
一、手机亮屏时如何提高存活率
在点击home键使app长时间停留在后台时,内存不足时会被杀死。
处理这种情况时运用灰色保活,在service里通过Service.startForeground() 设置为前台服务,提高存活率。
GrayInnerService
二、手机锁屏时如何提高存活率
手机在进入锁屏状态一段时间,省电机制会杀死后台进程。
处理这种情况时,我们需注册广播监听锁屏和解锁事件, 锁屏后启动一个1像素的透明Activity, 解锁后销毁这个透明Activity。
注:这个广播要写到要保活的service中。
OnePiexlActivity.class
总结:以上就是在手机锁屏和亮屏时对进程进行保活的两种方法
源码地址:
Android 后台任务执行
参考:
手机休眠引发的“血案”
使设备保持唤醒
目的为了后台能够执行定时任务,避免因为设备息屏等操作导致CPU进入睡眠状态,定时任务被暂停,这就需要能够唤醒CPU,使CPU能够起来工作
具有唤醒CPU功能, 唤醒CPU与唤醒屏幕非同一功能。
AlarmManager是安卓系统封装的用于管理RTC 模块,RTC(实时时钟)是一个独立的硬件时钟,可以在CPU休眠时正常运行,在预设的时间到达时,通过中断唤醒CPU。这意味着,如果我们用AlarmManager来定时执行任务,CPU可以正常的休眠,只有在需要运行任务时醒来一段很短的时间。
AlarmManager 定时任务测试:
MI8 UD:
测试1: 创建一个 Service, Service 中启动一个 AlarmManager 定时任务
息屏后会继续打印Log,但息屏超过1min 后,log 停止输出:
测试2: 创建一个前台通知Service
Service + StartForground + 前台通知 方式,
MI8 UD 息屏后仍继续打印log.
MI 8 + MI 10 经过测试,在长时间息屏状态下, AlarmManager 也会存在不工作情况。
另外,设备处于低电耗模式下, AlarmManager 会停止工作或延迟工作,解决办法: AlarmManager 利弊
手机长时间不操作,CPU 就会进入睡眠状态,会导致 Timer 中的定时任务无法正常运行。
息屏后,TimerTask 停止工作,再次亮屏后,继续工作
同样会由于息屏导致CPU睡眠, Handler 停止工作
太“重”了,使用起来。 影响设备耗电量。
WorkManager 也可以运行后台任务,用于在APP进程被kill后,系统依然可以运行的任务,不要用于APP被杀后,后台服务即停止的任务。
总结:
Timer并不太适用于那些需要长期在后台运行的定时任务。为了能让电池更加耐用,每种手机都会有自己的休眠策略,Android 手机就会在长时间不操作的情况下自动让 CPU 进入到睡眠状态,这就有可能导致 Timer 中的定时任务无法正常运行。
Alarm具有唤醒 CPU 的功能,即可以保证每次需要执行定时任务的时候 CPU 都能正常工作。
AlarmManager 定时任务最小间隔5S, 如何设置间隔 5s, 也是按照 5s 间隔执行。
Android DozeMode
名称栏目:包含android后台的词条
网站路径:http://myzitong.com/article/dssgsjs.html