MainActivity の開始時に開始される Service を実装しています。このサービスは、ネットワーク接続を確認して維持します。
アクティビティが利用できない場合でもサービスを実行し続けたいので、サービスをアクティビティにバインドしていません。サービスは、接続先のサーバーからメッセージを受信します。
サービスがメッセージを受信したときに次のことを行うための最適なロジックを選択するのに苦労しています。
MainActivity が現在開いていて、ユーザーの前にあるかどうかを確認します
アクティビティでいくつかのメソッドを呼び出して UI とやり取りする場合
アクティビティの更新がない場合、通知は次のとおりです。
私の質問は;
サービスの UI でアクティビティが実行されているかどうかを正しく確認するにはどうすればよいですか? サービスをバインドできることはわかっていますが、アクティビティが閉じている場合はバインドを解除したくありません。それは問題になるでしょうか?
サービスからアクティビティにメッセージを送信する必要があります。上記のシナリオを考えると、これを行うための最良の方法は何でしょうか?