Service的监视

android API提供了监听service是否在运行的方法,可以轻松依据service运行状态做判断从而去处理你想做的事。废话不说,方法如下:
pubic boolean isServiceRun(Context context){
     ActivityManager am = (ActivityManager)context.getSystemService(context.ACTIVITY_SERVICE);
     List<RunningServiceInfo> list = am.getRunningServices(30);
     for(RunningServiceInfo info : list){
         if(info.service.getClassName.equals("service的全称(一般为包名+service类的名称)")){
                  return true;
         }
    }
    return false;

}




在service中

 public static boolean isServiceRun(Context context) {  
 ActivityManager am = (ActivityManager) context  
 .getSystemService(Context.ACTIVITY_SERVICE);  
 List<android.app.ActivityManager.RunningServiceInfo> list = am.getRunningServices(30);  
 for (android.app.ActivityManager.RunningServiceInfo info : list) {  
 if (info.service.getClassName().equals(  
 "com.NoUIRebootDemo.main.TimerService")) {  
 return true;  
 }  
 }  
 return false;  
 }  

你可能感兴趣的:(Service的监视)