[ADI][17/N] aggressively auto-disconnect from the verifier service
Based on the discussions with the syshealth team, there's no point
keeping the binding alive for a long time, because the cost of rebinding
is relatively small. This CL changes the auto-disconnect logic to the
following:
1) The VerifierController tracks if there are any pending verification
requests that have been sent out but have not received any response
(including timeouts). If so, wait up to 10 minutes for each pending
verification before removing it from the tracker. (10-minute is the
maximum amount of time we allow a verifier to extend the timeout
duration to.)
2) If there is no more pending verifications in the tracker, unbind
after 10 minutes. This countdown also starts when the verifier
service is first connected, and is canceled when the first verification
request is sent out.
FLAG: android.content.pm.verification_service
BUG: 360129657
Test: atest VerifierControllerTest
Merged-In: Icb6ff22ab4ab53f5dd5395d20924f1254662ae33
Change-Id: Icb6ff22ab4ab53f5dd5395d20924f1254662ae33
4 files changed