私はサービスを開始および停止するアクティビティを持っています。それはシンプルなようですが、私がサービスを開始し、それを停止する場合は、それは大丈夫です。
サービスを再起動すると、サービスのインスタンスが2つ見つかりました。
なぜですか?私は「initButton」サービスをクリックした場合複数のサービスインスタンスの防止
public class Test extends AppCompatActivity implements View.OnClickListener {
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.InitButton:
{
startMonitor();
}
break;
case R.id.EndButton:
{
stopMonitor();
}
break;
case R.id.SendData:
{
sendData();
}
break;
default:
break;
}
}
...
private void startMonitor(){
Intent intent = new Intent(this, MyService.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK);
startService(intent);
}
private void stopMonitor(){
Intent intent = new Intent(this, MyService.class);
stopService(intent);
}
を開始それから私は「EndButton」をクリックして、サービスが
を終了それから私は再び「initButton」をクリックして、私はポストを示唆したが、私の見る2つのサービス
を開始アクティビティでサービスを停止したときにサービスが実行されていない
[サービスがAndroidで実行されているかどうかを確認する方法](https:///stackoverflow.com/questions/600207/how-to-check-if-a-service-is-running-on-android) – Zoe
レコードの場合は、既存のが走っています。特定のタイプのサービスの量に制限はありません(ハードウェアの制限を除いて、明らかに) – Zoe
サービスを停止する前にサービスを実行しているのはなぜですか? – mrpep