2016-06-16 3 views
3

私はWebサービスからデータを取得した後、毎回UIを更新するアプリケーションに取り組んでいます。 AsyncTaskはデータを取得するたびに呼び出すことができますが、これは奇妙に見えます。バックグラウンドサービスでデータを取得し、アクティビティでそのブロードキャストを受信する方法もあります。しかし、データベースに変更がなければ、リソースを使用しています。データベースに変更が生じた後にデータを取得するかどうかを確認する方法はありますか?いつも快適なサービスコールアンドロイドで

+0

https://firebase.google.com/docs/database/ – Manifest

答えて

3

私は毎回データをプルする代わりにプッシュを使うべきだと思います。アプリケーションにGCMプッシュを実装します。あなたが興味を持っているデータに変更があった場合、サーバーはその変更についてのプッシュを送信します。

あなたのアプリケーションは、希望するように放送受信機の変更に関する情報を受け取ります。その後、アプリケーションはapi呼び出しを行い、実際のデータを取得できます。ここで

は、GCMの詳細については、以下のとおりです。 https://developers.google.com/cloud-messaging/

+0

私は、特定の活性を有する懸念していた場合はどのように私は、それを行うだろう。アクティビティが存在する場合は、データを取得するか、取得しないでください。 –

+0

あなたのアクティビティはあなたのアクティビティにダイナミックなブロードキャストレシーバを持つことができ、アクティビティの開始時にそれを登録できます。あなたの活動がそこになければ、あなたはこの放送を受け取ることができません。したがって、あなたはAPI呼び出しをしません。 –

+0

いくつかのサンプルコードを共有できますか? –

関連する問題