我想检查我的服务是否正在运行, 我使用下面的代码,它在牛轧糖之前工作正常,但在奥利奥中不起作用
private boolean isMyServiceRunning(Class<?> serviceClass, Context context) {
ActivityManager manager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
for (ActivityManager.RunningServiceInfo service : manager.getRunningServices(Integer.MAX_VALUE)) {
Log.d(TAG, "isMyServiceRunning: " + service.service.getClassName());
if (serviceClass.getName().equals(service.service.getClassName())) {
return true;
}
}
return false;
}
但是上面的代码不适用于前台服务。
我已提及this但它也不起作用..
最佳答案
ActivityManager.getRunningServices()
API 已 deprecated自 API 26 起,从 Oreo 起不再可用。它仅用于调试,而不是生产应用程序。您的应用程序不应依赖此类 API。
关于android - 检查 Android OREO 中的前台服务是否正在运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53761074/