一意のID値を使用してIntentServiceを数回開始しています。インテントを再作成し、それを使用して現在のIntentServiceでstopServiceを呼び出すと、現在のIntentServiceを停止するだけでなく、IntentServiceキュー全体がキャンセルされます。また、キューにあるIntentServiceでstopServiceを呼び出しても、効果はありません。
サービスの開始:
Intent intent = new Intent(context, IntentService.class);
intent.putExtra("action", "scan");
intent.putExtra("id", id);
context.startService(intent);
サービスを停止する
Intent intent = new Intent(context, IntentService.class);
intent.putExtra("action", "scan");
intent.putExtra("id", id);
context.stopService(intent);
関連付けられたIDを持つIntentServiceを停止/キューから削除してから、残りのキューを実行させたいと思います。