Widget not updated on launcher restart
I've got a widget which will update itself whenever there's a configuration change (such as screen orientation), and whenever the phone is unlocked. This process involves setting onClick
handlers for the buttons on my widget. This works well, however I have found that there's a usage case which causes my app to not respond to onClick
events. This particular case is whenever the launcher restarts itself.
Is there a way to detect when a launcher restarts, so I can update my widget manually? Or is there another way to ensure onClick
handlers are not lost?
Turns out I was spamming new RemoteViews()
when I should have just called it once to produce the view, and then referred to that one instance when required. In my solution, I have a class variable which stores this single RemoteView instance, and a getter to access it.