Android中判断Service是否运行

扶醉桌前 提交于 2020-03-22 14:14:08

if (isServiceStarted(MyCurrentActivity.this, "包名")){
  txtStatus.setText("正在运行");
}
else{
  txtStatus.setText("未运行");
}

public static boolean isServiceStarted(Context context,String PackageName){
  boolean isStarted =false;

  try{
    int intGetTastCounter = 1000;

    ActivityManager mActivityManager =(ActivityManager)context.getSystemService(Context.ACTIVITY_SERVICE);

    List<ActivityManager.RunningServiceInfo> mRunningService = mActivityManager.getRunningServices(intGetTastCounter);

    for (ActivityManager.RunningServiceInfo amService : mRunningService){
      if(0 == amService.service.getPackageName().compareTo(PackageName)){
           isStarted = true;
         break;
      }
    }
  }catch(SecurityException e){
    e.printStackTrace();
  }

  return isStarted;
}

  本人发布的内容均为学习中用过的代码,上传主要为了方便以后的复习和为他人提供一些方便,一些代码没有上下文,新学的朋友有不懂或存在问题的地方可以留言。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!