2012-05-05 6 views
2

アプリとそのすべてのアクティビティとサービスを停止したいと考えています。現在、他のアクティビティを開始した主なアクティビティからfinish()を呼び出すと、自分のデバイスのホーム画面に移動するとアプリが停止しているように見えます。しかし、私はデバイス上で実行中のアプリケーションをチェックすると、このアプリはまだ表示されます。それは "1つのプロセスと1つのサービス"と言います。すべてを殺す方法はありますか?あるいは、もし私が個別にそれをやらなければならないのなら、どのようなものが走っているのかを知ることができます。ありがとうすべてのアクティビティやサービスを含むアプリを停止する - アンドロイドのライフサイクル

答えて

1

プロセスが強制終了されることを確認したい特定の理由はありますか?

Androidはプロセスをインテリジェントに管理します。それはあなたのプロセスを維持し、ユーザーがあなたのアプリケーションを再起動する場合、新しいプロセスを起動するのではなく、既存のプロセスを使用することができます。また、デバイスのメモリが不足している場合、Androidはこれらの非アクティブプロセスを強制終了してリソースを解放します。

つまり、良いこと Androidはあなたのプロセスを守ります。あなたはそれが不必要に殺されることを望むべきではありません。

アプリケーションのサービスを停止していない可能性があります。 bindServiceを使用してアクティビティからサービスを開始すると、アクティビティが停止したときにサービスが自動的に停止します(他のサービスにバインドされていないものと仮定して)。また、startServiceを使用してサービスを開始する場合は、stopServiceを呼び出してサービスを停止する必要があります。

+0

ああ、正しい、私は必要なものだったfinish()の前にstopService()を実行していました。 – dt1000

関連する問題