diff options
author | 2022-05-06 12:31:17 -0700 | |
---|---|---|
committer | 2022-05-06 12:31:17 -0700 | |
commit | 8a97933149137677fae3c58b67816bbaf0911e4e (patch) | |
tree | f9669ed4eab7d06498867e70eb87a15fc49d6eb0 | |
parent | c49ba33ac0d3a0f867d0845b6c17d2e13906ca96 (diff) |
Un-obscure the Telephony phone account ID.
With the upcoming changes in T to move telephony phone account handles to
use subid instead of ICCID, the id of telephony phone account handles
no longer needs to be Log.pii-ed. These phone accounts have been hard to
diagnose in most bug reports due to the obfuscation.
Bug: 226972613
Test: Manual testing; place calls and verify Telephony account handles are now visible.
Change-Id: Icae7917e7063c753c8597c401ad7adc1d9052775
-rw-r--r-- | telecomm/java/android/telecom/PhoneAccountHandle.java | 33 |
1 files changed, 25 insertions, 8 deletions
diff --git a/telecomm/java/android/telecom/PhoneAccountHandle.java b/telecomm/java/android/telecom/PhoneAccountHandle.java index e3485deb9080..ec94f8a1829f 100644 --- a/telecomm/java/android/telecom/PhoneAccountHandle.java +++ b/telecomm/java/android/telecom/PhoneAccountHandle.java @@ -46,6 +46,14 @@ import java.util.Objects; * See {@link PhoneAccount}, {@link TelecomManager}. */ public final class PhoneAccountHandle implements Parcelable { + /** + * Expected component name of Telephony phone accounts; ONLY used to determine if we should log + * the phone account handle ID. + */ + private static final ComponentName TELEPHONY_COMPONENT_NAME = + new ComponentName("com.android.phone", + "com.android.services.telephony.TelephonyConnectionService"); + @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.P, trackingBug = 127403196) private final ComponentName mComponentName; @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.P, trackingBug = 115609023) @@ -136,14 +144,23 @@ public final class PhoneAccountHandle implements Parcelable { @Override public String toString() { - // Note: Log.pii called for mId as it can contain personally identifying phone account - // information such as SIP account IDs. - return new StringBuilder().append(mComponentName) - .append(", ") - .append(Log.pii(mId)) - .append(", ") - .append(mUserHandle) - .toString(); + StringBuilder sb = new StringBuilder() + .append(mComponentName) + .append(", "); + + if (TELEPHONY_COMPONENT_NAME.equals(mComponentName)) { + // Telephony phone account handles are now keyed by subscription id which is not + // sensitive. + sb.append(mId); + } else { + // Note: Log.pii called for mId as it can contain personally identifying phone account + // information such as SIP account IDs. + sb.append(Log.pii(mId)); + } + sb.append(", "); + sb.append(mUserHandle); + + return sb.toString(); } @Override |