Web API とやり取りするアプリを作ろうと考えています。
要件:
- 賭けを開始して通知を表示する
- POST 経由でサイトにベットを送信します。
- 結果が到着したら、その結果で UI を更新します。
- ユーザーが停止ボタンを押していない場合は、#2 に戻ります。それ以外の場合は、賭けを停止して通知を削除します。
- アプリが閉じられているか、アクティブなアプリではない場合でも、賭けは続行されます
- 通知がクリックされると、アプリを表示/起動します
多くの調査と読書の後、バインドされたフォアグラウンド サービスがこれを達成すると考えましたが、その方法を見つけることができません (または理解していないだけかもしれません)...
ここに私の質問があります:
サービスを作成して賭けのロジックを入れると、アクティビティ/アプリがサービスを開始してバインドします..
- アクティビティからの最初のベット データでベットを開始するようにサービスに指示するにはどうすればよいですか?
- アプリが閉じたとき、または画面上でアクティブなアプリではないとき、サービスはどのように知ることができますか?
- サービスはアプリの UI をどのように更新できますか?
私はまだこれを行う可能な方法を探します。誰かが私を正しい道に導いてくれることを願っています..
アップデート
(3)LocalBroadcast
UIをいつ更新するかをサービスからアプリコンポーネントに通知するために使用することになりました。
(2) を使用するLocalBroadcast
ことで、自分のサービスは自分のアプリの状態を気にするべきではないと考えました。
(1)Bound Service
サービスのメソッドを使用して呼び出すだけで、データを渡して賭けを開始しました。