× [PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。 |
iOSでローカル通知と呼んでいるものと同等のことをAndroidで行おうとする場合
・AlarmManager 指定時刻に処理を発動させる機能を持つクラス 自身のアプリがバックグラウンドにいても問題ない AlarmManager を作成する。 指定すべき事柄は大きく2つ 1. 時刻 発動させたい時刻。long型で、1970/1/1 からのミリ秒 2. 内容 発動させたい内容。 つまり、指定のメッセージで通知を実行するということ Intent型。起動すべきクラスの指定と(後述)、extraに随時データを格納する(メッセージ本文など) AlarmManager が発動したのを受け取るためには BroadcastReceiver を継承し onReceive() を実装する(仮にAlarmReceiverクラスとする) かつ、AndroidManifest.xmlにも記述を行う ・AlarmReceiver::onReceive() で行う内容 Notification.notifyを行う つまり、通知を送信 指定すべき事柄は ・表示内容 通知のタイトル、テキスト、アイコンなど テキストなど、毎回変わるような事柄は AlarmManager から伝達してもらうのが良い onReceiveの引数にintentがあるので、intent.getExtra()などする ・タップ時の挙動 通知をタップした時に実行させる内容 つまり、自身のアプリの起動 Intent型 自身のMainActivity クラスを引数に指定しておけば良い PR |
|