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
Change-Id: Icf3133cdeca526979cb621f29659b880127b680a
Merged-In: Ib032072dcfd2d3d5e700e380af08b7b3142ebb8e
1 file changed