如何检查后台服务(Android的Service类)是否正在运行?我希望我的Activity能够显示Service的状态,然后我可以打开或者关闭它。
/**
* 判断服务是否处于运行状态.
* @param servicename
* @param context
* @return
*/
public static boolean isServiceRunning(String servicename,Context context){
ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
List infos = am.getRunningServices(100);
for(RunningServiceInfo info: infos){
if(servicename.equals(info.service.getClassName())){
return true;
}
}
return false;
}
这个方法是可靠的,因为这是由Android系统提供的服务查询办法。
更多参考:外链网址已屏蔽