HW filter background time optimization #974
Merged
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.
Issue
First beacon detection happens after ~25 minutes after the first run of the application in background mode.
Cause
It takes ~10 minutes to launch the application after is being killed + 15 minutes to run the first scheduled periodic scan job in order to install the HW filter.
Fix
After the application is launched in background, do an immediate scan job in order to install immediately the HW filter (which is installed after a scan job life-cycle is completed).
The monitored beacons are detected in 10 minutes (how much it takes to re-launch the application).
The fix is composed from two commits:
The 2nd commit depends on the 1st one.
Roboelectric tests
The tests are passed (with fix #973).
Manual tests
Device: Huawei Mate 20 Pro
AndroidOS: 10
Debug without wire (over Wi-Fi)