Add property invalidated cache for getSubscriptionId.

Telecom calls into TelephonyManager#getSubscriptionId quite often for
phone account handle operations.  Adding a property invalidated cache
to TelephonyManager to cache those values.
The cache is invalidated from Telephony whenever phone accounts are
re-registered.

Test: Added unit test which confirms the number of AIDL calls when the
cache is operating as expected.
Test: Manual test; verified that I can see the property invalidated cache
logs which indicate that there are cache hits going on.
Bug: 224654574

Change-Id: I62c992247921465d401442c2aff005384665258e
1 file changed