Add method in TelecomManager to return line1Number for a PhoneAccount.
Since we do not want to expose SubIds in the app layer, we need a
wrapper to extra the subId from a PhoneAccount and return the
value of TelephonyManager#line1Number.
Also update error strings to be more consistent.
Bug: 19087382
Change-Id: Ie5a474d45336921d1007b36a4d26cd4da68f8b91
diff --git a/telecomm/java/android/telecom/TelecomManager.java b/telecomm/java/android/telecom/TelecomManager.java
index 6621726..1a6b292 100644
--- a/telecomm/java/android/telecom/TelecomManager.java
+++ b/telecomm/java/android/telecom/TelecomManager.java
@@ -691,7 +691,7 @@
getTelecomService().clearAccounts(packageName);
}
} catch (RemoteException e) {
- Log.e(TAG, "Error calling ITelecomService#clearAccountsForPackage()", e);
+ Log.e(TAG, "Error calling ITelecomService#clearAccountsForPackage", e);
}
}
@@ -726,7 +726,7 @@
return getTelecomService().isVoiceMailNumber(accountHandle, number);
}
} catch (RemoteException e) {
- Log.e(TAG, "RemoteException calling isInCall().", e);
+ Log.e(TAG, "RemoteException calling ITelecomService#isVoiceMailNumber.", e);
}
return false;
}
@@ -746,12 +746,32 @@
return getTelecomService().hasVoiceMailNumber(accountHandle);
}
} catch (RemoteException e) {
- Log.e(TAG, "RemoteException calling isInCall().", e);
+ Log.e(TAG, "RemoteException calling ITelecomService#hasVoiceMailNumber.", e);
}
return false;
}
/**
+ * Return the line 1 phone number for given phone account.
+ *
+ * @param accountHandle The handle for the account retrieve a number for.
+ * @return A string representation of the line 1 phone number.
+ *
+ * @hide
+ */
+ @SystemApi
+ public String getLine1Number(PhoneAccountHandle accountHandle) {
+ try {
+ if (isServiceConnected()) {
+ return getTelecomService().getLine1Number(accountHandle);
+ }
+ } catch (RemoteException e) {
+ Log.e(TAG, "RemoteException calling ITelecomService#getLine1Number.", e);
+ }
+ return null;
+ }
+
+ /**
* Returns whether there is an ongoing phone call (can be in dialing, ringing, active or holding
* states).
* <p>