summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Shuo Qian <shuoq@google.com> 2021-05-06 18:44:20 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2021-05-06 18:44:20 +0000
commitf3dc01bf8c7daa91b66bf5ee384f316660dcc892 (patch)
treeb0693c3f904bbaf475d40927a5602f9920eea0f6
parent8c62b2ba7cb1b0ff9858d8da1538eac41bd29c29 (diff)
parent839508eea27126c0df4d2df56b6bfb84c6077d53 (diff)
Merge "Handles Telephony service not up fatal exception in CallerInfoAsyncQuery" into sc-dev
-rw-r--r--telecomm/java/android/telecom/CallerInfoAsyncQuery.java11
1 files changed, 10 insertions, 1 deletions
diff --git a/telecomm/java/android/telecom/CallerInfoAsyncQuery.java b/telecomm/java/android/telecom/CallerInfoAsyncQuery.java
index a9e1a8fc1952..bf49f3c7b9bf 100644
--- a/telecomm/java/android/telecom/CallerInfoAsyncQuery.java
+++ b/telecomm/java/android/telecom/CallerInfoAsyncQuery.java
@@ -483,7 +483,16 @@ public class CallerInfoAsyncQuery {
// check to see if these are recognized numbers, and use shortcuts if we can.
TelephonyManager tm = context.getSystemService(TelephonyManager.class);
- if (tm.isEmergencyNumber(number)) {
+ boolean isEmergencyNumber = false;
+ try {
+ isEmergencyNumber = tm.isEmergencyNumber(number);
+ } catch (IllegalStateException ise) {
+ // Ignore the exception that Telephony is not up. Use PhoneNumberUtils API now.
+ // Ideally the PhoneNumberUtils API needs to be removed once the
+ // telphony service not up issue can be fixed (b/187412989)
+ isEmergencyNumber = PhoneNumberUtils.isLocalEmergencyNumber(context, number);
+ }
+ if (isEmergencyNumber) {
cw.event = EVENT_EMERGENCY_NUMBER;
} else if (PhoneNumberUtils.isVoiceMailNumber(context, subId, number)) {
cw.event = EVENT_VOICEMAIL_NUMBER;