キャンバスとImageViewを使用してカスタムアナログ時計アプリウィジェットを作成しています。
ウィジェットプロバイダーのonEnabledイベントで毎分のトップにアラームを設定しました。アラームは、時計の描画を担当するBroadcastReceiverを呼び出します。
ビットマップをある時点まで保存するので、描画時間を短縮します。しかし、BroadcastReceiverはonUpdateが戻るとすぐに停止するため、ビットマップを保持できません。
まず、BroadcastReceiverに何かを保存する方法はありますか?
BroadcastReceiverの代わりにサービスを使用するのは、終了しないためです。しかし、どういうわけか私はそれがこれに良いかどうかわかりませんか?
そして、私はサービスについていくつかの一般的な質問があります:
私はどこかでサービスがAndroidシステムによって殺されるかもしれないと読みましたか?もしそうなら、AlarmManagerはそれを再開しますか?
時計を更新するためにデバイスをウェイクアップしたくありません。これは重要ではなく、デバイスの電源を入れるとすぐに更新できるためです。サービスがバックグラウンドで実行されていることをどこかで読みました。サービスを使用してAlarmManagerで呼び出すと、デバイスがスリープ状態になりますか?
そして、これは私の時計がどのように見えるかです: