2017 Android进程详解 进程保活

首先对Android中进程的优先级从高到低进行一个划分
1.Foreground Process 前台进程 最前断的进程
2.Visible Process 可见的进程
3.Service Process 我们普通创建的Service
4.Background Process 处于背景情况下 没有退出但是没有显示了
5.Empty Process 应用推出了 资源释放了 但是内存还有一些缓存
当我们的系统需要资源的时候就会按照优先级从低到高进行回收。

单进程保活。
第一步创建一个Service在Start里面创建一个TimerTask 让他定时的打印东西,已向系统证明我是活跃的。
在OnDestory里面启动一个广播。而不是创建Service。
那么为什么创建广播而不是Service。
Service是属于当前的进程的,那么当前进程被销毁的时候我们的Service还是会被干掉。
广播的创建Process和我们自己创建的Process进行隔离。

系统层清空资源的时候我们的广播,也是和App相关联了,所以我们调用系统级别释放资源的时候,广播也被回收了,导致了无法唤起我们埋下的进程。

在Android6/7的时候我们的非前台的进程会被停止,或者被清除掉。
目前基本上失效了。

双进程守护
一个应有拥有两个进程。在讲这个之前我们先了解一些概念。
Service:
localService:普通的Service
RemoteService:IPC ,-》AIDL进程间通信(相关技术支付宝支付 微信 是给别人用的)是连接两个App的技术。
AIDL的使用模式:
1.第一步定义AIDL接口
2.未远程服务实现对应的stub
3.讲服务暴露给客户程序

解决思路:
进程A 进程B
删除A 同时创建B
删除B 同时创建A
JobScheduler & JobService
JobScheduler(不定时的定时器):可以检测到的广播充电wifi 不定式的提示 还有手机重启

obService service OnstartJob onStopJob·

Service不同于Activity在系统运行的时候只会存在一个。
支付宝 微信
终极的保活方式是进入白名单

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值