summaryrefslogtreecommitdiffstats
path: root/telecomm/java
diff options
context:
space:
mode:
authorNancy Chen <nancychen@google.com>2014-10-15 15:48:21 -0700
committerNancy Chen <nancychen@google.com>2014-10-16 14:48:09 -0700
commit443e501c46f57b4189c4ae943d989b24366ef9d8 (patch)
treed2d1715fa18eef1820286822ad3e03d25ffcb70f /telecomm/java
parentc913c2dec18519ae5b989f65b207c7b3fec2d0ef (diff)
downloadframeworks_base-443e501c46f57b4189c4ae943d989b24366ef9d8.zip
frameworks_base-443e501c46f57b4189c4ae943d989b24366ef9d8.tar.gz
frameworks_base-443e501c46f57b4189c4ae943d989b24366ef9d8.tar.bz2
Use Telecom API for checking if a number is voicemail (1/2)
Since we don't want to communicate directly with Telephony in dialer, call PhoneNumberUtils.isVoiceMailNumber (a Telephony method) through the Telecom API. Add a method in TelecomManager to do this. Bug: 17925501 Change-Id: Iecea82a0e5f0b106eaf105e9026d606110acf122
Diffstat (limited to 'telecomm/java')
-rw-r--r--telecomm/java/android/telecom/TelecomManager.java21
-rw-r--r--telecomm/java/com/android/internal/telecom/ITelecomService.aidl5
2 files changed, 26 insertions, 0 deletions
diff --git a/telecomm/java/android/telecom/TelecomManager.java b/telecomm/java/android/telecom/TelecomManager.java
index f3358f8..e87615e 100644
--- a/telecomm/java/android/telecom/TelecomManager.java
+++ b/telecomm/java/android/telecom/TelecomManager.java
@@ -656,6 +656,27 @@ public class TelecomManager {
}
/**
+ * Return whether a given phone number is the configured voicemail number for a
+ * particular phone account.
+ *
+ * @param accountHandle The handle for the account to check the voicemail number against
+ * @param number The number to look up.
+ *
+ * @hide
+ */
+ @SystemApi
+ public boolean isVoiceMailNumber(PhoneAccountHandle accountHandle, String number) {
+ try {
+ if (isServiceConnected()) {
+ return getTelecomService().isVoiceMailNumber(accountHandle, number);
+ }
+ } catch (RemoteException e) {
+ Log.e(TAG, "RemoteException calling isInCall().", e);
+ }
+ return false;
+ }
+
+ /**
* Returns whether there is an ongoing phone call (can be in dialing, ringing, active or holding
* states).
* <p>
diff --git a/telecomm/java/com/android/internal/telecom/ITelecomService.aidl b/telecomm/java/com/android/internal/telecom/ITelecomService.aidl
index f1cf885..91f44b9 100644
--- a/telecomm/java/com/android/internal/telecom/ITelecomService.aidl
+++ b/telecomm/java/com/android/internal/telecom/ITelecomService.aidl
@@ -115,6 +115,11 @@ interface ITelecomService {
void clearAccounts(String packageName);
/**
+ * @see TelecomServiceImpl#isVoiceMailNumber
+ */
+ boolean isVoiceMailNumber(in PhoneAccountHandle accountHandle, String number);
+
+ /**
* @see TelecomServiceImpl#getDefaultPhoneApp
*/
ComponentName getDefaultPhoneApp();