6

私のアプリケーションには、2つのサービスを開始するが、それらをバインドしない1つのアクティビティがあります。戻るボタンを選択してアプリケーションを終了すると(タスクマネージャーに表示されません)、アプリケーションによって開始された両方のサービスが実行され続けます。ただし、タスクマネージャーに移動してアプリケーションを強制終了すると、両方のサービスが停止します。意図した動作かどうかはわかりませんが、アプリケーションが終了した後もサービスを実行し続けたいと思います。どんな考えでもお願いします。

ありがとう

4

4 に答える 4

9

これは、タスクマネージャーの意図された動作です(そしてManageApplicationで強制的に停止します)。アプリケーションが実行していたバックグラウンド作業を実行したままにした場合、アプリケーションを停止するとどのようなメリットがありますか?

AndroidOSのストックバージョンでユーザーがサービスを強制終了するのを防ぐ方法はありません

于 2012-07-06T14:41:57.113 に答える
2

これは予想される動作です。サービスは独自のプロセスでは実行されません。アプリケーションが強制終了されると、プロセス全体が強制終了します。

私が添付したドキュメントには、1ページ下にオレンジ色のブロックがあります(残念ながら、リンクできないと思います:-()これにより、サービスの概要がわかります。

于 2012-07-06T14:42:10.400 に答える
0

私はわかりません!しかし、あなたはこれを試してみるべきです

于 2012-07-06T15:13:34.253 に答える
0

すでに述べたように、それは予想される動作です。サービスを開始したアプリを強制終了すると、実行中のサービスも強制終了されます。アプリが強制終了されたときにサービスを実行し続けたい場合は、別のプロセスでサービスを開始する必要があります。これは、マニフェストの次の宣言によって実現できます。

<service
    android:name=".ServiceClassName"
    android:process=":yourappname_background" >
    ...

参照:https ://stackoverflow.com/a/15474347/1150795

通常、アプリは、ユーザーがタスク/アプリマネージャーから明示的にアプリを強制終了するか、リソースの制限、バッテリーの低下、または同様の理由でシステムがアプリを強制終了するまで、アプリが強制終了されないことに注意してください。そのようなことを処理するのが典型的なユースケースであるかどうか、そして本当にそれを気にする必要があるかどうかはわかりません。

于 2016-05-04T10:14:00.990 に答える