Loading src/com/android/server/telecom/PhoneAccountRegistrar.java +32 −0 Original line number Diff line number Diff line Loading @@ -112,6 +112,38 @@ public final class PhoneAccountRegistrar { read(); } /** * Retrieves the phone account id for a given subscription id if it exists. Subscription ids * apply only to PSTN/SIM card phone accounts so all other accounts should not have a * subscription id. * @param subscriptionId The subscription id for which to construct the phone account id * @return The string representing the phone account id for the subscription id. */ public String getPhoneAccountIdForSubscriptionId(long subscriptionId) { return String.valueOf(subscriptionId); } /** * Retrieves the subscription id for a given phone account if it exists. Subscription ids * apply only to PSTN/SIM card phone accounts so all other accounts should not have a * subscription id. * @param accountHandle The handle for the phone account for which to retrieve the * subscription id. * @return The value of the subscription id (long) or -1 if it does not exist or is not valid. */ public long getSubscriptionIdForPhoneAccount(PhoneAccountHandle accountHandle) { PhoneAccount account = getPhoneAccount(accountHandle); if (account == null || !account.hasCapabilities(PhoneAccount.CAPABILITY_SIM_SUBSCRIPTION) || !TextUtils.isDigitsOnly(accountHandle.getId())) { // Since no decimals or negative numbers can be valid subscription ids, only a string of // numbers can be subscription id return -1; } return Long.parseLong(accountHandle.getId()); } /** * Retrieves the default outgoing phone account supporting the specified uriScheme. * @param uriScheme The URI scheme for the outgoing call. Loading src/com/android/server/telecom/TelecomServiceImpl.java +20 −0 Original line number Diff line number Diff line Loading @@ -152,6 +152,26 @@ public class TelecomServiceImpl extends ITelecomService.Stub { // Implementation of the ITelecomService interface. // @Override public String getPhoneAccountIdForSubscriptionId(long subscriptionId) { try { return mPhoneAccountRegistrar.getPhoneAccountIdForSubscriptionId(subscriptionId); } catch (Exception e) { Log.e(this, e, "getPhoneAccountIdForSubscriptionId"); throw e; } } @Override public long getSubscriptionIdForPhoneAccount(PhoneAccountHandle accountHandle) { try { return mPhoneAccountRegistrar.getSubscriptionIdForPhoneAccount(accountHandle); } catch (Exception e) { Log.e(this, e, "getSubscriptionIdForPhoneAccount"); throw e; } } @Override public PhoneAccountHandle getDefaultOutgoingPhoneAccount(String uriScheme) { try { Loading Loading
src/com/android/server/telecom/PhoneAccountRegistrar.java +32 −0 Original line number Diff line number Diff line Loading @@ -112,6 +112,38 @@ public final class PhoneAccountRegistrar { read(); } /** * Retrieves the phone account id for a given subscription id if it exists. Subscription ids * apply only to PSTN/SIM card phone accounts so all other accounts should not have a * subscription id. * @param subscriptionId The subscription id for which to construct the phone account id * @return The string representing the phone account id for the subscription id. */ public String getPhoneAccountIdForSubscriptionId(long subscriptionId) { return String.valueOf(subscriptionId); } /** * Retrieves the subscription id for a given phone account if it exists. Subscription ids * apply only to PSTN/SIM card phone accounts so all other accounts should not have a * subscription id. * @param accountHandle The handle for the phone account for which to retrieve the * subscription id. * @return The value of the subscription id (long) or -1 if it does not exist or is not valid. */ public long getSubscriptionIdForPhoneAccount(PhoneAccountHandle accountHandle) { PhoneAccount account = getPhoneAccount(accountHandle); if (account == null || !account.hasCapabilities(PhoneAccount.CAPABILITY_SIM_SUBSCRIPTION) || !TextUtils.isDigitsOnly(accountHandle.getId())) { // Since no decimals or negative numbers can be valid subscription ids, only a string of // numbers can be subscription id return -1; } return Long.parseLong(accountHandle.getId()); } /** * Retrieves the default outgoing phone account supporting the specified uriScheme. * @param uriScheme The URI scheme for the outgoing call. Loading
src/com/android/server/telecom/TelecomServiceImpl.java +20 −0 Original line number Diff line number Diff line Loading @@ -152,6 +152,26 @@ public class TelecomServiceImpl extends ITelecomService.Stub { // Implementation of the ITelecomService interface. // @Override public String getPhoneAccountIdForSubscriptionId(long subscriptionId) { try { return mPhoneAccountRegistrar.getPhoneAccountIdForSubscriptionId(subscriptionId); } catch (Exception e) { Log.e(this, e, "getPhoneAccountIdForSubscriptionId"); throw e; } } @Override public long getSubscriptionIdForPhoneAccount(PhoneAccountHandle accountHandle) { try { return mPhoneAccountRegistrar.getSubscriptionIdForPhoneAccount(accountHandle); } catch (Exception e) { Log.e(this, e, "getSubscriptionIdForPhoneAccount"); throw e; } } @Override public PhoneAccountHandle getDefaultOutgoingPhoneAccount(String uriScheme) { try { Loading