一.异常关闭

在onStartCommand的return中添加flag。

START_STICKY:如果service进程被kill掉,保留service的状态为开始状态,但不保留递送的intent对象。随后系统会尝试重新创建service

@Override

public int onStartCommand(Intent intent, int flags, int startId)

{

return START_STICKY;

}

二.正常关闭

正常关闭则必定经过onDestroy,所以在onDestroy中发广播,通过那个广播再启动service。

Service

@Override

public void onDestroy()

{

sendBroadcast(new Intent(GlobalData.RESTART_SERVICE));

super.onDestroy();

}

BroadcastReceiver

@Override

public void onReceive(Context context, Intent intent)

{

this.con = context;

new Thread(){

public void run() {

try

{

sleep(2000);

}

catch (InterruptedException e)

{

e.printStackTrace();

}

con.startService(new Intent(MY_SERVICE));

};

}.start();

}

如何让android的service一直在后台运行?,保持service一直在后台运行相关推荐

  1. android后台自播放音乐,Android实现后台播放音乐(Service方式)

    Android实现后台播放音乐(Service方式) 实现: 在res文件夹下添加raw文件夹,添加mp3/4格式的音乐文件 注意命名规则只能是a-z,0-9,和下划线_ 不能大写字母和- Andro ...

  2. Android 启动后台运行程序(Service)

    Android开发中,当需要创建在后台运行的程序的时候,就要使用到Service.Service 可以分为有无限生命和有限生命两种.特别需要注意的是Service跟Activities是不同的(简单来 ...

  3. 【Android 进程保活】提升进程优先级 ( 使用前台 Service 提高应用进程优先级 | 启动相同 id 的第二个前台 Service 关闭通知 )

    文章目录 一. 前台 Service 通知问题 二. 设置 startForeground id 参数为 0 三. 启动相同 id 的第二个前台 Service 关闭通知 1. 前台服务 1 2. 关 ...

  4. 【Android 进程保活】提升进程优先级 ( 使用前台 Service 提高应用进程优先级 | 效果展示 | 源码资源 )

    文章目录 一. 使用前台 Service 提高应用进程优先级 1. 前台 Service 代码 2. 前台 Service 代码 3. 启动服务 二.效果展示 三.源码资源 一. 使用前台 Servi ...

  5. android异步线程未执行,关于多线程:当服务在后台运行时,Android异步任务无法正常运行(doInBackground未执行)...

    我注意到有时Async任务无法正常运行,实际上它的doInBackground()方法没有被调用,这种情况主要发生在该活动在后台运行任何服务时. 例如,当音乐在带有服务的后台运行时,Async任务不会 ...

  6. Android(java)学习笔记114:Service生命周期

    1.Service的生命周期         Android中的Service(服务)与Activity不同,它是不能和用户交互,不能自己启动的,运行在后台的程序,如果我们退出应用的时候,Servic ...

  7. Android菜鸟的成长笔记(16)——Service简介

    Service是Android四大组件之一 1.Service与Activity的区别在:Service一直在后台运行,没有用户界面. 2.选择Activity与Service的标准:如果某个程序组件 ...

  8. Android Studio调用百度地图(二):实现地图显示后台定位和步行导航

    先看一下运行效果: 实现功能:后台定位+步行导航(可通过长按屏幕自定义终点,起点为定位点) 后台定位即当程序在后台时依旧执行定位功能,步行导航支持30米-50千米范围内的导航 一 导入SDK并配置相关 ...

  9. 【Android 进程保活】应用进程拉活 ( 系统 Service 机制拉活 | Service 组件 onStartCommand 方法分析 | 源码资源 )

    文章目录 一. Service 组件 onStartCommand 方法分析 1. onStartCommand 函数返回值分析 2. onStartCommand 函数 START_STICKY_C ...

  10. 【Android 安全】DEX 加密 ( Application 替换 | 分析 Service 组件中调用 getApplication() 获取的 Application 是否替换成功 )

    文章目录 一. Service 中的 getApplication() 方法分析 二. ActivityThread 中的 H 处理 CREATE_SERVICE 消息 三. ActivityThre ...

最新文章

  1. b树删除节点每次只能删一个吗_面试官,请不要问我B+树了!!
  2. unet 层_【paper阅读笔记】UNet
  3. python self的含义
  4. ORACLE_LOADER加载外部数据
  5. Hadoop Hive替换自带的derby数据库为MySQL具体步骤
  6. matplotlib的颜色和控制条
  7. leetcode @python 120. Triangle
  8. NiFi-面向流程的大数据处理框架
  9. 吴恩达(Andrew Ng)——机器学习笔记1
  10. Archlinux桌面配置指南
  11. 西电版《离散数学》勘误
  12. 如何学好书法---临摹
  13. html画布抗锯齿,javascript – Node-Canvas图像抗锯齿似乎不起作用
  14. 不知道考研那些书比较好么?我来推荐~~~(一)
  15. 管理软件开发的最高境界,那就是“无代码开发”
  16. 在Java中使用@Scheduled定时器的时间设置。
  17. gpuz怎么看显存颗粒
  18. 【UV打印机】理光喷头组合说明(24H)
  19. 查询话费余额php接口,PHP代码示例_PHP账号余额查询接口 | 微米-中国领先的短信彩信接口平台服务商...
  20. 中山大学(大三感想)

热门文章

  1. 美团2018测开编程题——改卷子魔法表
  2. 微信公众号更新缓存问题--批量添加版本号
  3. 动力电池产业剧变中,宁德时代拿什么保住“一哥”地位?
  4. java 克隆有什么用_java中的克隆技术具体有什么应用?
  5. mysql conflicts with_安装MYSQL错误“conflicts with file from package mysql-libs-*” 解决方法-阿里云开发者社区...
  6. 创新型中小企业申报流程
  7. oracle中job_queue_processes 表,参数job_queue_processes与Oracle jobs - 一沙弥的世界
  8. Oracle AWR管理与维护
  9. 数组名和数组名取地址 的区别
  10. Ruby 函数式编程