手机服务

package com.example.administrator.mobilesafe.Utils;

import android.app.ActivityManager;
import android.app.ApplicationErrorReport;
import android.content.Context;

import java.util.List;

/**
 * Created by Administrator on 2017/9/29.
 * 判断服务是否开启
 * ture 服务运行
 * false 服务停止
 * 传参数服务名字
 */

public class serviceUtil {
    // 传参数Context便于获得上下文环境获得
    public static boolean isRunning(Context cxt,String serviceName){
        // 1 获取activityManager 管理对象  其可以获得当前手机正在运行的所有服务
      ActivityManager  aAM = (ActivityManager) cxt.getSystemService(Context.ACTIVITY_SERVICE);
       // 2 获取正在运行的服务(多少个服务一般100够大了,目前手机一般不会那么多)
       List<ActivityManager.RunningServiceInfo> runningService= aAM.getRunningServices(1000);//服务过多站内存
      //遍历所有服务集合 获得服务名字 与传递的服务名字作比较 如果一致说明正在进行
        for (ActivityManager.RunningServiceInfo run:runningService) {
            // 获取每个真正运行的服务名
             if (serviceName.equals(run.service.getClassName())){
                // 匹配上返回true  匹配不上直接false
                 return  true;
             }
        }
        return false;
    }
}




获得全部运行的服务:


 // 正在运行的服务
        ActivityManager am = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
        // 管理器调用方法获得正在运行的服务信息
        List<ActivityManager.RunningServiceInfo> rsi = am.getRunningServices(1000);
        // 遍历集合  获得全部服务
        for (ActivityManager.RunningServiceInfo run : rsi) {
            Log.d("TAG", "onCreate: " + run.service.getClassName() + "\n");

        }

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 毋庸赘言 代码如下: 调用注意demo:
    dev晴天阅读 167评论 0 0
  • 正规一点的Dtac营业厅叫Dtac Hall,在Emquartier商场内有一个。由于本人在Emquartier联...
    Danny_Boy阅读 6,786评论 0 51
  • 过年的时候,大学一个朋友对我说:“好久不联系了,要不咱们建个群吧?” 我愣了一下,建群?哦就是那个微信群,忙着回应...
    陪月亮摘星星阅读 926评论 6 8
  • 店面遇到问题再做决定时,为了使大家满意并愿意去执行,大多都是需要一起商讨层层剖析,讨论出最合理的结果。
    Ding欣欣阅读 126评论 0 0
  • 凌晨,打开微信,点击朋友圈,拍张公司照片并配上文字曰:终于做完最后一份报表,再整理一下,明天继续努力! ...
    岁月悠静阅读 666评论 0 0