Fix Active Notification Count sensor showing 0 notifications when upd… #4525
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
I noticed that after my previous changes (#4516) were merged, this error log showed up in Logcat:
And also, the Active Notification Count sensor always shows
0 notifications
when the sensor update was triggered throughrequestSensorUpdate()
. I noticed that there are two instances created fromNotificationSensorManager
: one which is instantiated here from the code, and the other is instantiated by the Android framework because it is aService
. The problematic case was when it was instantiated from the code because that instance was added toSensorReceiver.MANAGERS
, andrequestSensorUpdate()
is usually called on instances from that list.Related discussion from the previous PR.
I added the
updateActiveNotificationCount()
call to make the newly added setting appear earlier. A long-term solution for this could be this refactor idea. (Also, I think it would be good not to have multiple instances of a singleSensorManager
. EverySensorManager
that inherits fromBroadcastReceiver
orService
(and thus instantiated by Android) is prone to errors like this.)Link to pull request in Documentation repository
Documentation: home-assistant/companion.home-assistant#
Any other notes