When the app is started in the background due to a healthkit change it is expected to register queries as part of application start, in order to receive new data. BeeSwift previously did not do so until later in startup due to needing to wait for an up to date goals list.
Now we store the goals list each time it updates, which means on startup we can use the most recent list to register for updates. This may occasionally lead to over-registration, but that is better than not receiving background updates.
Relevant to #312
Test Plan:
Observed the app starts successfully in simulator
When the app is started in the background due to a healthkit change it is expected to register queries as part of application start, in order to receive new data. BeeSwift previously did not do so until later in startup due to needing to wait for an up to date goals list.
Now we store the goals list each time it updates, which means on startup we can use the most recent list to register for updates. This may occasionally lead to over-registration, but that is better than not receiving background updates.
Relevant to #312
Test Plan: Observed the app starts successfully in simulator