有时候,我们的应用需要判断一个service是否正在运行,下面的代码可以判断AlarmService是否正在运行:
private boolean isMyServiceRunning() { ActivityManager manager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE); for (RunningServiceInfo service : manager .getRunningServices(Integer.MAX_VALUE)) { if (AlarmService.class.getName().equals( service.service.getClassName()){ return true; } } return false; }
典型例子:进入应用时需要登陆等操作,之后就开启service与服务器交互,当service在后台运行时,重新点击应用图标应该是直接进入内容页面的,而无需登陆。