こんにちは、アクティビティが 1 つあり、アクティビティからサービス クラスが 1 つあり、ある時点でサービスを開始しています。サービスを開始したいのですが、同じ時点で、サービスが既に実行されていることを確認したいのですが、そうでない場合は開始サービスを呼び出したくありません。ストラトですが、私の問題は、サービスが実行されているかどうかをどのように知ることができるかということです?
私は以下のコードを使用しましたが、私にとってはうまくいかないのは、私を助ける他のコードです
private boolean isServiceRunning() {
ActivityManager manager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
for (RunningServiceInfo service : manager
.getRunningServices(Integer.MAX_VALUE)) {
if ("TimerService".equals(service.service.getClassName())) {
Toast.makeText(getApplicationContext(), "running", 100).show();
return true;
}
}
Toast.makeText(getApplicationContext(), "not running", 100).show();
return false;
}
このコードは、実行中であってもチューニングしていないことを常に示しています