activityManager.getRunningServices(Integer.MAX_VALUE);
此方法返回一个列表,其中包含手动停止的服务.
设置>应用程序>运行服务
最佳答案 使用onDestroy或onSometing事件或Binders或静态变量的所有方法都无法可靠地工作,因为作为开发人员,您永远不知道,当Android决定杀死您的进程或者调用了哪些提到的回调时.请注意Android文档中生命周期事件表中的“killable”列.
//使用此代码检查您的服务是否正在运行
private boolean isMyServiceRunning() {
ActivityManager manager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
for (RunningServiceInfo service : manager.getRunningServices(Integer.MAX_VALUE)) {
if ("com.example.MyService".equals(service.service.getClassName())) {
return true;
}
}
return false;
}