Fix potential issue where sub info change listener is not registered.
SubscriptionManager#addOnSubscriptionsChangedListener can fail to
register a listener if the TELEPHONY_REGISTRY system service is not up.
Currently this is just silently ignored.
Adding a callback method on the listener to notify the registrant that the
listener failed to be registered, and adding exponential backoff code in
TelecomAccountRegistry to retry registration.
Test: Manual; edited code in Subscriptionmanager to fail the first attempts
to add a listener for TelecomAccountRegistry. Verified the backoff took
place and registration still occurred for the listener.
Test: Tried to write a mockito test but gave up because this code has
far too many intertwined dependencies and is not inherently testable
Bug: 152217039
Fixes: 153376310
Merged-In: Ic4ae6f405918b91ff899ae298097fba568d509cb
Change-Id: Icf69e000269980317d4c96ecddb7ff3ef4698dc4
1 file changed