Activityに表示するデータを定期取得して表示させる処理

187 views
Skip to first unread message

順子

unread,
Oct 18, 2011, 12:51:28 AM10/18/11
to 日本Androidの会
初投稿させていただきます。
順子と申します。

Activity Aに表示するデータを定期的に取得して表示させる処理を行いたいと考えています。

現段階ではAlarmManagerを使って定期更新処理を実装しています。
Activity BでAlarmManagerを使ってServiceを起動しています。
(定期処理開始の設定はActivity Bで行いたいため)

ServiceではActivity Aで表示するデータを取得してApplicationクラスにセットしています。
別ActivityからActivity Aに遷移するとApplicationクラスにセットした値を表示させています。

しかし、Activity Aがフォアグラウンドである時にデータを取得する場合の実装方法がわかりません。

コールバックインターフェースを用いようとしましたが
Activity Aがフォアグラウンドであるか判断する術がわからずうまくいきません。

また、他に良い実装方法があるのか、
もしお分かりになる方がいましたらご教授お願いいたします。

元木

unread,
Oct 18, 2011, 1:34:35 AM10/18/11
to android-g...@googlegroups.com
こんにちは、元木です。

Activity A の

    onResume()メソッドが呼ばれてから、onPause()メソッドが呼ばれるまでの間

が、Activity A がフォアグラウンドにいる時です。

2011年10月18日13:51 順子 <technol...@gmail.com>:

--
このメールは Google グループのグループ「日本Androidの会」の登録者に送られています。
このグループに投稿するには、android-g...@googlegroups.com にメールを送信してください。
このグループから退会するには、android-group-j...@googlegroups.com にメールを送信してください。
詳細については、http://groups.google.com/group/android-group-japan?hl=ja からこのグループにアクセスしてください。


順子

unread,
Oct 18, 2011, 1:52:31 AM10/18/11
to 日本Androidの会
元木さま。

こんにちは。
回答ありがとうございます。

なるほど!
onResume()とonPause()の時にフラグ持たせて判断すればいいのですね!

どうもありがとうございました。

On 10月18日, 午後2:34, 元木 <kiyoshi.mot...@gmail.com> wrote:
> こんにちは、元木です。
>
> Activity A の
>
> onResume()メソッドが呼ばれてから、onPause()メソッドが呼ばれるまでの間
>
> が、Activity A がフォアグラウンドにいる時です。
>
> 2011年10月18日13:51 順子 <technology1...@gmail.com>:

トムキャット

unread,
Oct 18, 2011, 2:38:02 AM10/18/11
to 日本Androidの会
トムキャットです。

どういうアプリか分かりませんが、AlarmManagerやサービスが使えているのであれば、

・AlarmManagerはサービスを起動する。おすすめの方法は、commonswareのWakefulIntentServiceを使うも
の。
https://github.com/commonsguy/cwac-wakeful
・サービスは取得したデーターをSQLに格納する。
・アプリケーションは、SQLからデーターを読み出す。(サービスに読ませてBINDした関数から取り出しても良い。)

という構造にした方がいいと思います。安定した動作が期待できます。
Reply all
Reply to author
Forward
0 new messages