0

起動が完了すると開始される境界サービス S (別のプロセス) があります。アプリケーションの起動時にサービスにバインドするアプリケーション A があります。
ここで私の質問は、設定でアプリケーションを強制停止すると、別のプロセスにあるサービス S も破棄されることです。
理想的には、アプリケーション プロセスのみを強制終了し、サービスは実行し続ける必要があります。異なるプロセスにあるにもかかわらず、サービス S が強制終了されるのはなぜですか。

4

3 に答える 3

1

Activityバインドされたサービスは、呼び出されbindService()た が破棄されると常に停止します。これを防ぐには、次のことを行う必要があります。

  1. サービス内のメソッドSTART_STICKYから戻ることで、サービスを定着させます。onStartCommand()
  2. startService()から呼び出す前に呼び出す必要がありbindService()ますActivity
于 2012-10-31T10:57:03.597 に答える
0

でサービスを開始してみてくださいSTART_STICKY

于 2012-10-31T09:28:51.430 に答える
0

制限付きサービスは、クライアント サーバー通信の一種です。バインドされているアクティビティに接続またはバインドされている場所。したがって、サービスは強制終了されます。

于 2015-03-12T04:48:18.977 に答える