summaryrefslogtreecommitdiffstats
path: root/telecomm/java/android/telecom/PhoneAccount.java
diff options
context:
space:
mode:
Diffstat (limited to 'telecomm/java/android/telecom/PhoneAccount.java')
-rw-r--r--telecomm/java/android/telecom/PhoneAccount.java28
1 files changed, 24 insertions, 4 deletions
diff --git a/telecomm/java/android/telecom/PhoneAccount.java b/telecomm/java/android/telecom/PhoneAccount.java
index 1d6d8bc..66b52ae 100644
--- a/telecomm/java/android/telecom/PhoneAccount.java
+++ b/telecomm/java/android/telecom/PhoneAccount.java
@@ -16,7 +16,6 @@
package android.telecom;
-import android.annotation.SystemApi;
import android.content.Context;
import android.content.pm.PackageManager;
import android.content.res.Resources.NotFoundException;
@@ -35,9 +34,7 @@ import java.util.MissingResourceException;
/**
* Describes a distinct account, line of service or call placement method that the system
* can use to place phone calls.
- * @hide
*/
-@SystemApi
public class PhoneAccount implements Parcelable {
/**
@@ -286,6 +283,9 @@ public class PhoneAccount implements Parcelable {
* The raw callback number used for this {@code PhoneAccount}, as distinct from
* {@link #getAddress()}. For the majority of {@code PhoneAccount}s this should be registered
* as {@code null}. It is used by the system for SIM-based {@code PhoneAccount} registration
+ * where {@link android.telephony.TelephonyManager#setLine1NumberForDisplay(String, String)}
+ * has been used to alter the callback number.
+ * <p>
*
* @return The subscription number, suitable for display to the user.
*/
@@ -380,12 +380,17 @@ public class PhoneAccount implements Parcelable {
}
private Drawable getIcon(Context context, int resId) {
+ if (resId == 0) {
+ return null;
+ }
+
Context packageContext;
try {
packageContext = context.createPackageContext(
mAccountHandle.getComponentName().getPackageName(), 0);
} catch (PackageManager.NameNotFoundException e) {
- Log.w(this, "Cannot find package %s", mAccountHandle.getComponentName().getPackageName());
+ Log.w(this, "Cannot find package %s",
+ mAccountHandle.getComponentName().getPackageName());
return null;
}
try {
@@ -446,4 +451,19 @@ public class PhoneAccount implements Parcelable {
in.readList(supportedUriSchemes, classLoader);
mSupportedUriSchemes = Collections.unmodifiableList(supportedUriSchemes);
}
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder().append("[PhoneAccount: ")
+ .append(mAccountHandle)
+ .append(" Capabilities: ")
+ .append(mCapabilities)
+ .append(" Schemes: ");
+ for (String scheme : mSupportedUriSchemes) {
+ sb.append(scheme)
+ .append(" ");
+ }
+ sb.append("]");
+ return sb.toString();
+ }
}