文档章节

什么时候会启动多个进程

抉择很难
 抉择很难
发布于 2015/12/02 11:15
字数 543
阅读 46
收藏 1

       Android实现双进程守护的时候启动多个进程,做过android开发的人应该都知道应用会在系统资源匮乏
的情况下被系统杀死!当后台的应用被系统回收之后,如何重新恢复它呢?

1.提高优先级

这个办法对普通应用而言,应该只是降低了应用被杀死的概率,但是如果真的被系统回收了,
还是无法让应用自动重新启动!

2.让service.onStartCommand返回START_STICKY

通过实验发现,如果在adb shell当中kill掉进程模拟应用被意外杀死的情况(或者用360手机卫士进行清理操作),
如果服务的onStartCommand返回START_STICKY,在eclipse的进程管理器中会发现过一小会后被杀死
的进程的确又会出现在任务管理器中,貌似这是一个可行的办法。但是如果在系统设置的App管理中
选择强行关闭应用,这时候会发现即使onStartCommand返回了START_STICKY,应用还是没能重新启动
起来!


3.android:persistent="true"
网上还提出了设置这个属性的办法,通过实验发现即使设置了这个属性,应用程序被kill之后还是不能重新启动起来的!


4.让应用成为系统应用
实验发现即使成为系统应用,被杀死之后也不能自动重新启动。但是如果对一个系统应用设置了
persistent="true",情况就不一样了。实验表明对一个设置了persistent属性的系统应用,
即使kill掉会立刻重启。一个设置了persistent="true"的系统应用,在android中具有core service
优先级,这种优先级的应用对系统的low memory killer是免疫的!


文章来源:www.itlanbao.com

© 著作权归作者所有

抉择很难
粉丝 6
博文 51
码字总数 26157
作品 0
海淀
程序员
私信 提问
线程和进程(一)

现代操作系统比如Mac OS X,UNIX,Linux,Windows等,都是支持“多任务”的操作系统。 什么叫“多任务”呢?简单地说,就是操作系统可以同时运行多个任务。打个比方,你一边在用浏览器上网,...

stone_
2015/09/23
98
0
Android-Activity 启动过程,Android 从点击应用图标到界面显示的过程介绍

Android - Activity 启动过程 概述 从点击桌面应用图标到应用显示的过程我们再熟悉不过了,下面我们来分析下这个过程都做了什么。 本文主要对以下问题分析: ActivityThread 是什么,它是一个...

天王盖地虎626
06/21
18
0
Java—多线程基础

多线程基础 基本概念 进程 所谓进程就是运行在操作系统的一个任务,进程是计算机任务调度的一个单位,操作系统在启动一个程序的时候,会为其创建一个进程,JVM就是一个进程。进程与进程之间是...

LuDSh
2017/12/07
0
0
多线程初探:三种方式创建多线程详细示例

多线程即在同一时间,可以做多件事情。 创建多线程有3种方式,分别是继承线程类,实现Runnable接口,匿名类 一:线程概念 首先要理解进程(Processor)和线程(Thread)的区别 进程:启动一个LOL.e...

一只阿木木
2018/08/01
0
0
Android Service学习笔记

一 什么是Service 服务是运行在后台的一段代码。它可以运行在它自己的进程,也可以运行在其他应用程序进程的上下文(context)里面,这取决于自身的需要。其它的组件可以绑定到一个服务(Ser...

hewei2882
2012/07/15
891
0

没有更多内容

加载失败,请刷新页面

加载更多

黑客之道-40本书籍助你快速入门黑客技术免费下载

场景 黑客是一个中文词语,皆源自英文hacker,随着灰鸽子的出现,灰鸽子成为了很多假借黑客名义控制他人电脑的黑客技术,于是出现了“骇客”与"黑客"分家。2012年电影频道节目中心出品的电影...

badaoliumang
昨天
3
0
很遗憾,没有一篇文章能讲清楚线程的生命周期!

(手机横屏看源码更方便) 注:java源码分析部分如无特殊说明均基于 java8 版本。 简介 大家都知道线程是有生命周期,但是彤哥可以认真负责地告诉你网上几乎没有一篇文章讲得是完全正确的。 ...

彤哥读源码
昨天
3
0
jquery--DOM操作基础

本文转载于:专业的前端网站➭jquery--DOM操作基础 元素的访问 元素属性操作 获取:attr(name);$("#my").attr("src"); 设置:attr(name,value);$("#myImg").attr("src","images/1.jpg"); ......

前端老手
昨天
4
0
Django的ChoiceField和MultipleChoiceField错误提示,选择一个有效的选项

在表单验证时提示错误:选择一个有效的选项 例如有这样一个表单: class ProductForm(Form): category = fields.MultipleChoiceField( widget=widgets.SelectMultiple(), ...

编程老陆
昨天
6
0
Vue核心概念及特性 (一)

Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。 > 特点: 易用,灵活,高效,渐进式框架。 > 可以随意组合需要用到的模块 vue + components + vue-router + vuex + v...

前端优选
昨天
11
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部