私はこの方法をテストしました:
private boolean isMyServiceRunning() {
ActivityManager manager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
for (RunningServiceInfo service : manager.getRunningServices(Integer.MAX_VALUE)) {
if (MyService.class.getName().equals(service.service.getClassName())) {
return true;
}
}
return false;
}
アクティビティで startService() を使用せずに bindService() を呼び出すと、サービスは実行されています (前の方法で確認しました) が、startService() だけがサービスを開始できると考えていました。
したがって、サービスが実際にいつ開始されたかを知りたいだけです: startService() または binService()
コメントだけです。 unBindService() を呼び出したときのみ、前のメソッドは false を返します。
ありがとう。