方法中两个参数分别为
1.className Service类的全路径类名 “包名+类名”,AS提供了快捷方式,如下
2.context 上下文对象
调用该方法,如果返回值为true则正在运行,如果为false则没有运行。
方法代码如下:
public static boolean isServiceRunning(String className, Context context) {
//进程管理者
ActivityManager manager = (ActivityManager) context.getSystemService(context.ACTIVITY_SERVICE);
//获取进程中正在运行的服务集合
List<ActivityManager.RunningServiceInfo> runningservice = manager.getRunningServices(1000);
//遍历
for (ActivityManager.RunningServiceInfo runningServiceInfo : runningservice) {
//获取正在运行的服务的标识
ComponentName service = runningServiceInfo.service;
//获取正在运行的服务的全类型
String name = service.getClassName();
//判断
if (name.equals(className)) {
return true;
}
}
return false;
}