package com.wanggjie.weishi.utils; import android.app.ActivityManager; import android.content.Context; import java.util.List; /** * @author 王杰 * @time 2017/2/18 0:43 * @desc 判断服务是否开启的状态,如果是true,就代表服务开启,否则反之 */ public class ServiceUtils { public static boolean getServiceState(Context context,String serviceName) { //第一步获取到activity管理者 ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); //通过管理者去获取到系统所有正在运行的服务 List<ActivityManager.RunningServiceInfo> services = am.getRunningServices(50); for (ActivityManager.RunningServiceInfo service: services) { //获取到对应的服务类的全类名 String className = service.service.getClassName(); //判断className与传递过来的服务全类名是否相同 if(serviceName.equals(className)) { //说明服务已经开启,返回一个true return true; } } return false; } }