ふう。
またこんな時間だ。。。
自動更新機能を改善できそうなポイントがあったので、
リリースしてみました。
実装したポイントは2点。
1.ペンディングインテント競合の解消
CliphWeatherではAlarmとWidgetのタッチイベントにそれぞれ天気予報更新サービスを起動するIntentを搭載した、
PendingIntentを設定しているのですが、これが実は共通のものなので、Alarm様に設定したパラメータが、
Widgetへセットするパラメータで上書きされてしまっていました。
なので、これを独立させる様な改修を行いました。
2.WakeLockロジックの実装
スリープ中に起動して天気予報を更新する場合、AlarmManagerを使いますが、
AlarmManagerは起動先のonReceiveが終了するとスリープに戻ってしまう為、
更新処理が終わる前にスリープしてしまう可能性があるらしい。
よって、更新処理が始まったらPowerManagerクラスで電源ONの状態を確保してから、
実際の処理を行う様にして見ました。
ただ実は、この実装方法は自信がありません。
おかしな動きをしたり、やっぱり自動更新しないようであればご連絡ください。
よろしくお願いします。