zoukankan      html  css  js  c++  java
  • Android 查看服务service是否正在运行 列出正在运行的服务

    在启动服务service或者停止服务service之前,需要先判断服务是否正在运行,再决定是否启动或停止服务,启动之前如果已经启动,会造成系统资源不必要的浪费,结束之前没有启动,则会使程序异常。下面是一个判断服务是否正在运行的方法,传入参数一个是调用该方法的Activity的context,另一个是完整的服务名,包括包名。

     1 public  boolean isRunning(Context c,String serviceName)
     2 {
     3     ActivityManager myAM=(ActivityManager)c.getSystemService(Context.ACTIVITY_SERVICE); 
     4  
     5     ArrayList<RunningServiceInfo> runningServices = (ArrayList<RunningServiceInfo>) myAM.getRunningServices(40);
     6     //获取最多40个当前正在运行的服务,放进ArrList里,以现在手机的处理能力,要是超过40个服务,估计已经卡死,所以不用考虑超过40个该怎么办
     7     for(int i = 0 ; i<runningServices.size();i++)//循环枚举对比
     8     {
     9         if(runningServices.get(i).service.getClassName().toString().equals(serviceName))
    10         {
    11             return true;
    12         }
    13     }
    14     return false;
    15 }
  • 相关阅读:
    ORACLE 如何产生一个随机数
    Oracle数据库一些操作信息
    EXP-00091和IMP-00010报错
    ORACLE数据库 memory_target SGA 大小
    linux如何查看端口被哪个进程占用的方法
    命令信息
    Linux负载均衡软件LVS
    oracle 字段信息
    oracle数据库的启动与关闭
    idea解除版本控制
  • 原文地址:https://www.cnblogs.com/nick-zhang/p/3739147.html
Copyright © 2011-2022 走看看