当前位置: 代码迷 >> Android >> android怎么获取后台正在运行的service
  详细解决方案

android怎么获取后台正在运行的service

热度:40   发布时间:2016-05-01 18:32:55.0
android如何获取后台正在运行的service
给一段获取正在运行的后台service的代码,如下:
  1. //RunningServicesInfo
  2. ? ? ? ? public static String getRunningServicesInfo(Context context) {
  3. ? ? ? ? ? ? ? ? StringBuffer serviceInfo = new StringBuffer();
  4. ? ? ? ? ? ? ? ? final ActivityManager activityManager = (ActivityManager) context
  5. ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? .getSystemService(Context.ACTIVITY_SERVICE);
  6. ? ? ? ? ? ? ? ? List<RunningServiceInfo> services = activityManager.getRunningServices(100);

  7. ? ? ? ? ? ? ? ? Iterator<RunningServiceInfo> l = services.iterator();
  8. ? ? ? ? ? ? ? ? while (l.hasNext()) {
  9. ? ? ? ? ? ? ? ? ? ? ? ? RunningServiceInfo si = (RunningServiceInfo) l.next();
  10. ? ? ? ? ? ? ? ? ? ? ? ? serviceInfo.append("pid: ").append(si.pid);
  11. ? ? ? ? ? ? ? ? ? ? ? ? serviceInfo.append("\nprocess: ").append(si.process);
  12. ? ? ? ? ? ? ? ? ? ? ? ? serviceInfo.append("\nservice: ").append(si.service);
  13. ? ? ? ? ? ? ? ? ? ? ? ? serviceInfo.append("\ncrashCount: ").append(si.crashCount);
  14. ? ? ? ? ? ? ? ? ? ? ? ? serviceInfo.append("\nclientCount: ").append(si.clientCount);
  15. ? ? ? ? ? ? ? ? ? ? ? ? serviceInfo.append("\nactiveSince: ").append(ToolHelper.formatData(si.activeSince));
  16. ? ? ? ? ? ? ? ? ? ? ? ? serviceInfo.append("\nlastActivityTime: ").append(ToolHelper.formatData(si.lastActivityTime));
  17. ? ? ? ? ? ? ? ? ? ? ? ? serviceInfo.append("\n\n");
  18. ? ? ? ? ? ? ? ? }
  19. ? ? ? ? ? ? ? ? return serviceInfo.toString();
  20. ? ? ? ? }
1 楼 z小强g 2012-03-23  
你好,如何获取后台正在运行的服务呢?不是服务的信息。
比如我界面要根据后台运行进行更新。当Activity被destroy之后,新Activity如何获取Service的运行情况呢。
  相关解决方案