现在的位置: 首页 > 综合 > 正文

列出Android设备中所有启动的服务,及判断某个服务是否开启

2018年04月04日 ⁄ 综合 ⁄ 共 1861字 ⁄ 字号 评论关闭

Java代码 
  1. package com.tutor.runningservice;    
  2. import java.util.List;    
  3. import android.app.Activity;    
  4. import android.app.ActivityManager;    
  5. import android.os.Bundle;    
  6. import android.widget.TextView;    
  7. public class RunningService extends Activity {    
  8.     /** Called when the activity is first created. */    
  9.     @Override    
  10.     public void onCreate(Bundle savedInstanceState) {    
  11.         super.onCreate(savedInstanceState);    
  12.         //setContentView(R.layout.main);    
  13.         TextView mTextView = new TextView(this);    
  14.         ActivityManager mActivityManager =     
  15.             (ActivityManager)getSystemService(ACTIVITY_SERVICE);    
  16.             
  17.         List<ActivityManager.RunningServiceInfo> mServiceList = mActivityManager.getRunningServices(30);    
  18.         //我要判断的服务名字,我在launcher2里加了一个音乐服务       
  19.         final String musicClassName = "com.android.launcher2.MusicService";    
  20.                   
  21.         boolean b = MusicServiceIsStart(mServiceList, musicClassName);    
  22.          
  23.         mTextView.setText("你要判断的服务状态为: " +b+"\n" + getServiceClassName(mServiceList));    
  24.         setContentView(mTextView);    
  25.     }    
  26.     //通过Service的类名来判断是否启动某个服务    
  27.     private boolean MusicServiceIsStart(List<ActivityManager.RunningServiceInfo> mServiceList,String className){    
  28.             
  29.         for(int i = 0; i < mServiceList.size(); i ++){    
  30.             if(className.equals(mServiceList.get(i).service.getClassName())){    
  31.                 return true;    
  32.             }    
  33.         }    
  34.         return false;    
  35.     }    
  36.     //获取所有启动的服务的类名    
  37.     private String getServiceClassName(List<ActivityManager.RunningServiceInfo> mServiceList){    
  38.         String res = "";    
  39.         for(int i = 0; i < mServiceList.size(); i ++){    
  40.             res+=mServiceList.get(i).service.getClassName()+ " \n";    
  41.         }    
  42.             
  43.         return res;    
  44.     }    
  45. }    

抱歉!评论已关闭.