Android判断服务是否正在运行

方法中两个参数分别为
1.className Service类的全路径类名 “包名+类名”,AS提供了快捷方式,如下
在这里插入图片描述
2.context 上下文对象
在这里插入图片描述
调用该方法,如果返回值为true则正在运行,如果为false则没有运行。
方法代码如下:

 public static boolean isServiceRunning(String className, Context context) {
        //进程管理者
        ActivityManager manager = (ActivityManager) context.getSystemService(context.ACTIVITY_SERVICE);
        //获取进程中正在运行的服务集合
        List<ActivityManager.RunningServiceInfo> runningservice = manager.getRunningServices(1000);
        //遍历
        for (ActivityManager.RunningServiceInfo runningServiceInfo : runningservice) {
            //获取正在运行的服务的标识
            ComponentName service = runningServiceInfo.service;
            //获取正在运行的服务的全类型
            String name = service.getClassName();
            //判断
            if (name.equals(className)) {
                return true;
            }
        }
        return false;
    }
发布了77 篇原创文章 · 获赞 411 · 访问量 27万+

猜你喜欢

转载自blog.csdn.net/qq_42761395/article/details/100173841
今日推荐