Android8.0以降でウィジェット更新されない?
- 2018年11月月火日
- 開発
Googleより、
11月1日までにアプリのtargetSDKversionを26(8.0)以上にしないと・・・
といった旨のメールが来ていたので、先日、名言EVERYDAY365となんでもEVERYDAYのバージョンアップをしたら、8.0以降でウィジェットが更新されない事態に。
(不具合に遭遇している皆様、ご不便をおかけしてすみません。)
原因は、8.0からバッテリー消費の抑制のため、バックグラウンドサービスと一部を除いて暗黙的なブロードキャストが使えなくなっていたとか。
今まではウィジェットの更新に、
・バックグラウンドサービスで暗黙的なブロードキャスト(TIME_TICKなど)を取得
・暗黙的なブロードキャストをレシーブして、ウィジェットを更新
としていたのですが、これからは、
・ジョブスケジューラ(jobScheduler)で定期的(最短15分間隔)に明示的なブロードキャストを作成
・明示的なブロードキャストをレシーブして、ウィジェットを更新
(上で動かなかったので追記)
・ジョブスケジューラ(jobScheduler)で定期的(最短15分間隔)にウィジェットを更新
に変更して動作しました。
※なんでもEVERYDAYの1~12分間隔の更新はできなくなりました。
コメントを残す