спасибо, ккуди!Я смог адаптировать ваш ответ к работе для действия ... вот что сработало в моем приложении ..
public boolean isServiceRunning() {
ActivityManager activityManager = (ActivityManager)Monitor.this.getSystemService (Context.ACTIVITY_SERVICE);
List<RunningTaskInfo> services = activityManager.getRunningTasks(Integer.MAX_VALUE);
isServiceFound = false;
for (int i = 0; i < services.size(); i++) {
if (services.get(i).topActivity.toString().equalsIgnoreCase("ComponentInfo{com.lyo.AutoMessage/com.lyo.AutoMessage.TextLogList}")) {
isServiceFound = true;
}
}
return isServiceFound;
}
этот пример даст вам истину или ложь, если topActivity соответствует тому, что делает пользователь,Поэтому, если активность, которую вы проверяете, не отображается (то есть включена), вы не получите совпадения.Кроме того, для этого вам нужно добавить разрешение в манифест ..
<uses-permission android:name="android.permission.GET_TASKS"/>
Надеюсь, это было полезно!