如何判断一个服务是否正在运行中:
/** * 判断某个服务是否正在运行的方法 * * @param mContext * @param serviceName 是包名+服务的类名 * @return true代表正在运行,false代表服务没有正在运行 */ public static boolean isServiceWork(Context mContext, String serviceName) { boolean isWork = false; ActivityManager myAM = (ActivityManager) mContext .getSystemService(Context.ACTIVITY_SERVICE); List<RunningServiceInfo> myList = myAM.getRunningServices(40); if (myList.size() <= 0) { return false; } for (int i = 0; i < myList.size(); i++) { String mName = myList.get(i).service.getClassName().toString(); if (mName.equals(serviceName)) { isWork = true; break; } } return isWork; }
可能的使用场景是:强制停止某个指定的服务。
疑问:
1. 上述指令逻辑中,出现了可疑的参数:40。该参数作用如何?
2. 留个未来…