diff options
-rw-r--r-- | telecomm/java/android/telecom/CallerInfoAsyncQuery.java | 11 |
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; |