public class MyUtils {//工具类
//动态判断服务是否运行
public static boolean isServiceRunning(settingActivityCenter act,String className){
* ActivityManager是当前手机状态的管理者,不仅仅管理Activity,还管理Service,以及其他,一切正运行中的信息
* 类似于windows的任务管理器
ActivityManager am = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
//获得正在运行的服务的信息
List runningServices = am.getRunningServices(100); //参数是获得服务数量的最大值
for(RunningServiceInfo runningServiceInfo : runningServices){
String className = runningServiceInfo.service.getClassName();
return true;
}
}
return false;
}
}
-----------------------------------------------------------------------------------
在服务类中的onResume方法中
//动态判断服务是否运行
boolean isRunning = MyUtils.isServiceRunning(this, BlackNumService.class.getName()); svBlackNum.setCheck(isRunning);
这样就能动态的检测服务是否开启了