Android 查看服务service是否正在运行 列出正在运行的服务

在启动服务service或者停止服务service之前,需要先判断服务是否正在运行,再决定是否启动或停止服务,启动之前如果已经启动,会造成系统资源不必要的浪费,结束之前没有启动,则会使程序异常。下面是一个判断服务是否正在运行的方法,传入参数一个是调用该方法的Activity的context,另一个是完整的服务名,包括包名。


 1 public  boolean isRunning(Context c,String serviceName)
2 {
3 ActivityManager myAM=(ActivityManager)c.getSystemService(Context.ACTIVITY_SERVICE);
4
5 ArrayList<RunningServiceInfo> runningServices = (ArrayList<RunningServiceInfo>) myAM.getRunningServices(40);
6 //获取最多40个当前正在运行的服务,放进ArrList里,以现在手机的处理能力,要是超过40个服务,估计已经卡死,所以不用考虑超过40个该怎么办
7 for(int i = 0 ; i<runningServices.size();i++)//循环枚举对比
8 {
9 if(runningServices.get(i).service.getClassName().toString().equals(serviceName))
10 {
11 return true;
12 }
13 }
14 return false;
15 }

时间: 2024-10-24 13:45:28

Android 查看服务service是否正在运行 列出正在运行的服务的相关文章

Android 组件之Service解析

原创文章,转载请注明 http://blog.csdn.net/leejizhou/article/details/50866875 李济洲的博客 Service是Android四大组件之中的一个.Service主要作用于后台,能够进行一些后台的操作,它没实用户界面.它跟Activity比較类似,某种意义上能够理解为"Service是没实用户界面的Activity",那么我们什么时候须要使用Service呢?比如:音乐App正在播放音乐我们想切换到阅读App又不想让音乐停止就会用到Se

Android 四大组件 Service 服务

1.Service简介 按照使用范围分类: 类别 优点 缺点 区别 应用 本地服务 Local  Service 本地服务在一定程度上节约了资源,另外本地服务因为是在同一进程,因此不需要IPC,也不需要AIDL.相应bindService会方便很多. 主进程被Kill后,服务便会终止. 本地服务依附在主进程上,而不是独立的进程,用于应用程序内部 . 音乐播放服务 远程服务 Remote Service 对应进程名格式为所在包名加上指定的android:process字符串.由于是独立的进程,因此

Android学习笔记--服务(Service)

1.服务概述 1.服务是Android四大组件之一,在使用上可以分为本地服务和远程服务,本地服务是指在不影响用户操作的情况下在后台默默的执行一个耗时操作,例如下载,音频播放等.远程服务是指可以供其他应用程序调用的服务. 2.每个服务类都需要在AndroidMainfest.xml中使用<service>标签声明. 3.服务的启动方式分为两种Context.startService()和Context.bindService(), 服务的关闭可以通过外部调用Context.stopService

Android服务Service总结

转自 http://blog.csdn.net/liuhe688/article/details/6874378 富貴必從勤苦得,男兒須讀五車書.唐.杜甫<柏學士茅屋> 作为程序员的我们,须知富贵是要通过勤苦努力才能得到的,要想在行业内有所建树,就必须刻苦学习和钻研. 今天我们来讲一下Android中Service的相关内容. Service在Android中和Activity是属于同一级别上的组件,我们可以将他们认为是两个好哥们,Activity仪表不凡,迷倒万千少女,经常做一些公众人物角色

Android服务——Service

服务 Service 是一个可以在后台执行长时间运行操作而不使用用户界面的应用组件.服务可由其他应用组件启动,而且即使用户切换到其他应用,服务仍将在后台继续运行. 此外,组件可以绑定到服务,以与之进行交互,甚至是执行进程间通信 (IPC). 例如,服务可以处理网络事务.播放音乐,执行文件 I/O 或与内容提供程序交互,而所有这一切均可在后台进行. 服务基本上分为两种形式: 启动 当应用组件(如 Activity)通过调用 startService() 启动服务时,服务即处于"启动"状态

Android中 服务Service 电话窃听器

组件-服务 后台长期运行的没有界面的一个activity. 电话窃听器: 需求: 1.没有界面,一般用户看不到,开机自动启动 2.长期的后台运行,监视当前用户的手机状态 3.通话状态,开启一个录音机,然后录音通话记录,保存在sd卡中. 创建服务的步骤: 1.写一个类,继承系统的Service组件 2.清单文件配置 3.在服务的onCreate()方法做服务初始化的操作 4.在服务的onDestroy()方法里面做服务扫尾操作 5.开启服务startService(intent) stopServ

Android服务Service使用总结

一.Service简介 Service是android 系统中的四大组件之一(Activity.Service.BroadcastReceiver. ContentProvider),它跟Activity的级别差不多,但不能页面显示只能后台运行,并且可以和其他组件进行交互.service可以在很多场合的应用中使用,比如播放多媒体的时候用户启动了其他Activity这个时候程序要在后台继续播放,比如检测SD卡上文件的变化,再或者在后台记录你地理信息位置的改变等等,总之服务总是藏在后台的,例如,一个

android开发教程之开机启动服务service示例

个例子实现的功能是:1,安装程序后看的一个Activity程序界面,里面有个按钮,点击按钮就会启动一个Service服务,此时在设置程序管理里面会看的有个Activity和一个Service服务运行2,如果手机关机重启,会触发你的程序里面的Service服务,当然,手机启动后是看不到你的程序界面.好比手机里面自带的闹钟功能,手机重启看不到闹钟设置界面只是启动服务,时间到了,闹钟就好响铃提醒. 程序代码是: 首先要有一个用于开机启动的Activity,给你们的按钮设置OnClickListener

Android四大组件——Service后台服务、前台服务、IntentService、跨进程服务、无障碍服务、系统服务

Service后台服务.前台服务.IntentService.跨进程服务.无障碍服务.系统服务 本篇文章包括以下内容: 前言 Service的简介 后台服务 不可交互的后台服务 可交互的后台服务 混合性交互的后台服务 前台服务 IntentService AIDL跨进程服务 AccessibilityService无障碍服务 系统服务 部分源码下载 前言 作为四大组件之一的Service类,是面试和笔试的必备关卡,我把我所学到的东西总结了一遍,相信你看了之后你会对Service娓娓道来,在以后遇