被判断的Service 必须是带包名的全名

通过Service的类名来判断是否启动某个服务

private boolean MusicServiceIsStart(List<ActivityManager.RunningServiceInfo> mServiceList,String className){                    for(int i = 0; i < mServiceList.size(); i ++){              if(className.equals(mServiceList.get(i).service.getClassName())){                  return true;              }          }          return false;      }

获取所有启动的服务的类名

 private String getServiceClassName(List<ActivityManager.RunningServiceInfo> mServiceList){          String res = "";          for(int i = 0; i < mServiceList.size(); i ++){              res+=mServiceList.get(i).service.getClassName()+ " /n";          }                    return res;      }

判断服务是否存在

ActivityManager mActivityManager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);  List<ActivityManager.RunningServiceInfo> mServiceList = mActivityManager.getRunningServices(30);  // 我要判断的服务名字,必须是带包名的全名  final String musicClassName = "rod.fasdf.TService";  boolean b = MusicServiceIsStart(mServiceList, musicClassName);  System.out.println("服务是否开启======>"+b);

例子如下:

package com.tutor.runningservice;  import java.util.List;  import android.app.Activity;  import android.app.ActivityManager;  import android.os.Bundle;  import android.widget.TextView;  public class RunningService extends Activity {      /** Called when the activity is first created. */      @Override      public void onCreate(Bundle savedInstanceState) {          super.onCreate(savedInstanceState);          //setContentView(R.layout.main);          TextView mTextView = new TextView(this);          ActivityManager mActivityManager =               (ActivityManager)getSystemService(ACTIVITY_SERVICE);                    List<ActivityManager.RunningServiceInfo> mServiceList = mActivityManager.getRunningServices(30);          //我要判断的服务名字,我在launcher2里加了一个音乐服务             final String musicClassName = "com.android.launcher2.MusicService";                          boolean b = MusicServiceIsStart(mServiceList, musicClassName);                 mTextView.setText("你要判断的服务状态为: " +b+"\n" + getServiceClassName(mServiceList));          setContentView(mTextView);      }      //通过Service的类名来判断是否启动某个服务      private boolean MusicServiceIsStart(List<ActivityManager.RunningServiceInfo> mServiceList,String className){                    for(int i = 0; i < mServiceList.size(); i ++){              if(className.equals(mServiceList.get(i).service.getClassName())){                  return true;              }          }          return false;      }      //获取所有启动的服务的类名      private String getServiceClassName(List<ActivityManager.RunningServiceInfo> mServiceList){          String res = "";          for(int i = 0; i < mServiceList.size(); i ++){              res+=mServiceList.get(i).service.getClassName()+ " \n";          }                    return res;      }  }  

更多相关文章

  1. Android(安卓)studio修改apk release打包后的名字
  2. 【ClassNotFoundExcept】Android应用程序启动时发生AndroidRunti
  3. 解决android下创建avd设备不成功.txt
  4. android studio 如何修改app名字、修改app图标
  5. Android跟风瞎混 - 1
  6. android studio更改module名字
  7. android SDK升级到99报错怎么办
  8. 关于使用Android(安卓)Application的注意点
  9. WIFI名字为特殊字符显示乱码(MTK)

随机推荐

  1. Android(安卓)原生WebView的使用
  2. Android(安卓)虚拟多开系列二——技术原
  3. android studio mac_最新Mac安装Flutter
  4. 真正的Android
  5. Android多进程介绍
  6. Android推送通知指南
  7. 2020年!最全Android大厂面试真题合集(附答
  8. Android(安卓)11 (R) 分区存储
  9. 《第一行代码Android》笔记
  10. Android(安卓)Studio的build.gradle里面