My application run a service on startup (Service.java). I need to know when you start the application manually (in the Main.java) if my service is still running. Following my code on Main.java in onCreate:
if(isMyServiceRunning(Service.class)){
System.out.println("Still running");
}
isMyServiceRunning function:
private boolean isMyServiceRunning(Class<?> serviceClass) {
ActivityManager manager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
for (RunningServiceInfo service : manager.getRunningServices(Integer.MAX_VALUE)) {
if (serviceClass.getName().equals(service.service.getClassName())) {
return true;
}
}
return false;
}
The problem is that isMyServiceRunning
returns false even if the service is still running! How to solve it?