我有一项我认为在前台运行的服务,如何检查我的实施是否正常工作?
原文由 user811985 发布,翻译遵循 CC BY-SA 4.0 许可协议
我有一项我认为在前台运行的服务,如何检查我的实施是否正常工作?
原文由 user811985 发布,翻译遵循 CC BY-SA 4.0 许可协议
public static boolean isServiceRunningInForeground(Context context, Class<?> serviceClass) {
ActivityManager manager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
for (ActivityManager.RunningServiceInfo service : manager.getRunningServices(Integer.MAX_VALUE)) {
if (serviceClass.getName().equals(service.service.getClassName())) {
if (service.foreground) {
return true;
}
}
}
return false;
}
原文由 georgeok 发布,翻译遵循 CC BY-SA 3.0 许可协议
3 回答972 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
1 回答845 阅读✓ 已解决
2 回答957 阅读
2 回答894 阅读
1 回答832 阅读
2 回答699 阅读
如果你想知道你的服务是否在前台运行,只需打开其他一些胖应用程序,然后检查服务是否仍在运行或只检查标志
service.foreground
。