Merge "Add APIs to getDefaultDialerPackage and getSystemDialerPackage"
diff --git a/src/com/android/server/telecom/Call.java b/src/com/android/server/telecom/Call.java
index 8863215..baa80a8 100644
--- a/src/com/android/server/telecom/Call.java
+++ b/src/com/android/server/telecom/Call.java
@@ -530,6 +530,7 @@
// Log the state transition event
String event = null;
+ Object data = null;
switch (newState) {
case CallState.ACTIVE:
event = Log.Events.SET_ACTIVE;
@@ -542,6 +543,7 @@
break;
case CallState.DISCONNECTED:
event = Log.Events.SET_DISCONNECTED;
+ data = getDisconnectCause();
break;
case CallState.DISCONNECTING:
event = Log.Events.SET_DISCONNECTING;
@@ -557,7 +559,7 @@
break;
}
if (event != null) {
- Log.event(this, event);
+ Log.event(this, event, data);
}
}
}
diff --git a/src/com/android/server/telecom/Log.java b/src/com/android/server/telecom/Log.java
index 10ff6cc..bb5ba90 100644
--- a/src/com/android/server/telecom/Log.java
+++ b/src/com/android/server/telecom/Log.java
@@ -19,6 +19,7 @@
import android.net.Uri;
import android.telecom.PhoneAccount;
import android.telephony.PhoneNumberUtils;
+import android.text.TextUtils;
import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.util.IndentingPrintWriter;
@@ -118,12 +119,16 @@
public void dump(IndentingPrintWriter pw) {
Map<String, CallEvent> pendingResponses = new HashMap<>();
- pw.print("Call [");
+ pw.print("Call ");
+ pw.print(mId);
+ pw.print(" [");
pw.print(sDateFormat.format(new Date(mCall.getCreationTimeMillis())));
pw.print("]");
pw.println(mCall.isIncoming() ? "(MT - incoming)" : "(MO - outgoing)");
pw.increaseIndent();
+ pw.println("To address: " + piiHandle(mCall.getHandle()));
+
for (CallEvent event : mEvents) {
// We print out events in chronological order. During that process we look at each
@@ -304,27 +309,35 @@
return String.valueOf(pii);
}
+ StringBuilder sb = new StringBuilder();
if (pii instanceof Uri) {
Uri uri = (Uri) pii;
+ String scheme = uri.getScheme();
- // All Uri's which are not "tel" go through normal pii() method.
- if (!PhoneAccount.SCHEME_TEL.equals(uri.getScheme())) {
- return pii(pii);
+ if (!TextUtils.isEmpty(scheme)) {
+ sb.append(scheme).append(":");
+ }
+
+ String textToObfuscate = uri.getSchemeSpecificPart();
+ if (PhoneAccount.SCHEME_TEL.equals(scheme)) {
+ for (int i = 0; i < textToObfuscate.length(); i++) {
+ char c = textToObfuscate.charAt(i);
+ sb.append(PhoneNumberUtils.isDialable(c) ? "*" : c);
+ }
+ } else if (PhoneAccount.SCHEME_SIP.equals(scheme)) {
+ for (int i = 0; i < textToObfuscate.length(); i++) {
+ char c = textToObfuscate.charAt(i);
+ if (c != '@' && c != '.') {
+ c = '*';
+ }
+ sb.append(c);
+ }
} else {
- pii = uri.getSchemeSpecificPart();
+ sb.append(pii(pii));
}
}
- String originalString = String.valueOf(pii);
- StringBuilder stringBuilder = new StringBuilder(originalString.length());
- for (char c : originalString.toCharArray()) {
- if (PhoneNumberUtils.isDialable(c)) {
- stringBuilder.append('*');
- } else {
- stringBuilder.append(c);
- }
- }
- return stringBuilder.toString();
+ return sb.toString();
}
/**