フォアグラウンド サービスをフォアグラウンドで実行しないようにするには、次の 2 つの方法があります。サービスを停止するか、サービスを実行したままフォアグラウンドから削除できます。
フォアグラウンド サービスは、他のサービスを停止するのと同じ方法で停止できます。サービスは独自の stopSelf()
メソッドを呼び出すことができます。また、別のコンポーネントが stopService()
を呼び出してサービスを停止することもできます。フォアグラウンドで実行中にサービスを停止すると、通知が削除されます。
サービスをフォアグラウンドから削除するには、サービス内から stopForeground(int)
を呼び出します。このメソッドは、ステータスバーの通知も削除するかどうかを示すブール値を受け取ります。サービスは引き続き実行されますが、フォアグラウンド サービスではなくなります。