Android - 如何判断Service还在运行

Posted 来世当猪

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android - 如何判断Service还在运行相关的知识,希望对你有一定的参考价值。

校验某个服务还活着

我们创建一个ServiceUtils的类,里面写一个 isServiceRunning()这样的方法,在里面我们进行判断Service是否是运行状态

首先判断Service是否是运行状态,需要先获取Activity这个管理器

ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
然后创建一个List的集合,调用ActivityManager,使用getRunningService(100),这个方法获取到该Activity的服务方法,

List<RunningServiceInfo> info = am.getRunningServices(100);
RunningServiceInfo是一个服务运行的清单文件,通过遍历获取到每个服务的名称,在进行判断传递过来的需要进行判断的Servici的名称,

		for (RunningServiceInfo runningServiceInfo : info) 
			String name = runningServiceInfo.service.getClassName();
			if(name.equals(serviceName))
				return true;
			
		
否则返回false,其中需要注意的是,在传递service这个名称的时候,需要传递的是包名。

以上是关于Android - 如何判断Service还在运行的主要内容,如果未能解决你的问题,请参考以下文章

如何让android的service一直在后台运行

android 判断Service是否在运行

Android 如何判断一个应用在运行(转)

Android 中怎么判断WebView已经滑动到底部或顶部还在滑动类似上拉刷新下来加载更多.

正在启动 Android 服务?

如何让android的service一直在后台运行