summaryrefslogtreecommitdiffstats
path: root/telecomm/java
diff options
context:
space:
mode:
authorNancy Chen <nancychen@google.com>2014-10-15 18:47:01 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2014-10-15 18:47:03 +0000
commit9faf13b47467916897cf5c019a3a74df871b8f65 (patch)
tree21022a0315315a97e0603bf5cb3f1a981a8f199e /telecomm/java
parent09ba0da87fa56eac91da5eb2d0a20b7799df66d5 (diff)
parentb0cad32c3cadd0387f6dcd82aade629e6f2f6bee (diff)
downloadframeworks_base-9faf13b47467916897cf5c019a3a74df871b8f65.zip
frameworks_base-9faf13b47467916897cf5c019a3a74df871b8f65.tar.gz
frameworks_base-9faf13b47467916897cf5c019a3a74df871b8f65.tar.bz2
Merge "Add API method to extract subscription ID from phone account (1/3)" into lmp-sprout-dev
Diffstat (limited to 'telecomm/java')
-rw-r--r--telecomm/java/android/telecom/TelecomManager.java44
-rw-r--r--telecomm/java/com/android/internal/telecom/ITelecomService.aidl10
2 files changed, 54 insertions, 0 deletions
diff --git a/telecomm/java/android/telecom/TelecomManager.java b/telecomm/java/android/telecom/TelecomManager.java
index f3358f8..0d37f09 100644
--- a/telecomm/java/android/telecom/TelecomManager.java
+++ b/telecomm/java/android/telecom/TelecomManager.java
@@ -323,6 +323,50 @@ public class TelecomManager {
}
/**
+ * Return the corresponding PhoneAccount id of a given subscription id.
+ *
+ * @param subscriptionId The value of the subscription id the caller is trying to get a phone
+ * account id for.
+ * @return A string representing the phone account id or null.
+ *
+ * @hide
+ */
+ @SystemApi
+ public String getPhoneAccountIdForSubscriptionId(long subscriptionId) {
+ try {
+ if (isServiceConnected()) {
+ return getTelecomService().getPhoneAccountIdForSubscriptionId(subscriptionId);
+ }
+ } catch (RemoteException e) {
+ Log.e(TAG, "Error calling ITelecomService#getSubscriptionIdForPhoneAccount", e);
+ }
+ return null;
+ }
+
+ /**
+ * Return the subscription id of the PhoneAccount if it exists. This only applies to PSTN
+ * or SIM-based phone accounts. Return -1 otherwise.
+ *
+ * @param accountHandle The {@link PhoneAccountHandle} the caller is trying to get the
+ * subscription id for.
+ * @return The subscription id (a long) or -1 if the phone account is not a SIM or
+ * a subscription id does not exist.
+ *
+ * @hide
+ */
+ @SystemApi
+ public long getSubscriptionIdForPhoneAccount(PhoneAccountHandle accountHandle) {
+ try {
+ if (isServiceConnected()) {
+ return getTelecomService().getSubscriptionIdForPhoneAccount(accountHandle);
+ }
+ } catch (RemoteException e) {
+ Log.e(TAG, "Error calling ITelecomService#getSubscriptionIdForPhoneAccount", e);
+ }
+ return -1;
+ }
+
+ /**
* Return the {@link PhoneAccount} which is the user-chosen default for making outgoing phone
* calls with a specified URI scheme.
* <p>
diff --git a/telecomm/java/com/android/internal/telecom/ITelecomService.aidl b/telecomm/java/com/android/internal/telecom/ITelecomService.aidl
index f1cf885..09ee1cb 100644
--- a/telecomm/java/com/android/internal/telecom/ITelecomService.aidl
+++ b/telecomm/java/com/android/internal/telecom/ITelecomService.aidl
@@ -35,6 +35,16 @@ interface ITelecomService {
void showInCallScreen(boolean showDialpad);
/**
+ * @see TelecomServiceImpl#getPhoneAccountIdForSubscriptionId
+ */
+ String getPhoneAccountIdForSubscriptionId(in long subscriptionId);
+
+ /**
+ * @see TelecomServiceImpl#getSubscriptionIdForPhoneAccount
+ */
+ long getSubscriptionIdForPhoneAccount(in PhoneAccountHandle account);
+
+ /**
* @see TelecomServiceImpl#getDefaultOutgoingPhoneAccount
*/
PhoneAccountHandle getDefaultOutgoingPhoneAccount(in String uriScheme);