Android AlarmManager 3 サービスでの受け取り

Androidで、定期的にプログラムを動かしたい時は、AlarmManagerにて、BroadcastReciverかServiceを起動させます。
前回のアーティクルでは、BroadcastReciverを用いましたが、AlarmManagerからの呼び出し以外でプログラム内部から直接呼出したいこともあります。
自分で受け取るBroadcastを投げても実現はできますが、サービスとして実装した方が自然です。

例えば、RSSReaderでは以下のような2種類の方法でサービスを起動しています。

  • 指定した感覚でFeedの取得
  • メニューのリフレッシュコマンドによるFeedの取得

Serviceに関しては、ApiDemoプログラムに簡単なサンプルプログラムがあるのでそちらを参照してください。

Serviceの実装

public class FeedService extends Service {@Overridepublic void onCreate() {}@Overridepublic void onStart(Intent intent, int startId) {//パラメータ取得    Bundle extras = intent.getExtras();    doSomething();}}

実際には、作成するプログラムにより、スレッドを作成してその中で処理をします。

ブログ内の関連する記事


コメント

このブログの人気の投稿

島へ移住の話【炊飯】

ドローンプログラミング体験教室を伊豆大島の小学校でしてきました

情報処理安全確保支援士登録証のカード型が届きました。