Add disconnect strings for mid-call and dialing low battery disconnect.

Mapping the new disconnect causes to strings which are displayed to the
user from the dialer app.

Test: Manual
Merged-In: I7f158339d8da0b4b53b02e7fa8a3d4fc303b5c26
Change-Id: I7f158339d8da0b4b53b02e7fa8a3d4fc303b5c26
Fixes: 63936576
diff --git a/res/values/strings.xml b/res/values/strings.xml
index a294e22..7a7156f 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -1378,6 +1378,14 @@
         Wi-Fi connection lost.  Call ended.
     </string>
 
+    <!-- Call failure reason displayed when the user's outgoing call cannot be placed due to a low
+         battery. -->
+    <string name="dialFailed_low_battery">Your video call cannot be placed due to low battery.</string>
+
+    <!-- Call failure reason displayed when the user's call is ended due to a low battery. This
+         message is shown when an in-progress call is ended due to the battery being low. -->
+    <string name="callFailed_low_battery">Video call ended due to low battery.</string>
+
     <!-- The title for the change voicemail PIN activity -->
     <string name="change_pin_title">Change Voicemail PIN</string>
     <!-- The label for the continue button in change voicemail PIN activity -->
diff --git a/src/com/android/services/telephony/DisconnectCauseUtil.java b/src/com/android/services/telephony/DisconnectCauseUtil.java
index 6731dbd..26690b9 100644
--- a/src/com/android/services/telephony/DisconnectCauseUtil.java
+++ b/src/com/android/services/telephony/DisconnectCauseUtil.java
@@ -114,6 +114,8 @@
             case android.telephony.DisconnectCause.OUT_OF_NETWORK:
             case android.telephony.DisconnectCause.OUT_OF_SERVICE:
             case android.telephony.DisconnectCause.POWER_OFF:
+            case android.telephony.DisconnectCause.LOW_BATTERY:
+            case android.telephony.DisconnectCause.DIAL_LOW_BATTERY:
             case android.telephony.DisconnectCause.SERVER_ERROR:
             case android.telephony.DisconnectCause.SERVER_UNREACHABLE:
             case android.telephony.DisconnectCause.TIMED_OUT:
@@ -213,6 +215,14 @@
                 resourceId = R.string.callFailed_powerOff;
                 break;
 
+            case android.telephony.DisconnectCause.LOW_BATTERY:
+                resourceId = R.string.callFailed_low_battery;
+                break;
+
+            case android.telephony.DisconnectCause.DIAL_LOW_BATTERY:
+                resourceId = R.string.dialFailed_low_battery;
+                break;
+
             case android.telephony.DisconnectCause.ICC_ERROR:
                 resourceId = R.string.callFailed_simError;
                 break;
@@ -320,6 +330,14 @@
                 }
                 break;
 
+            case android.telephony.DisconnectCause.LOW_BATTERY:
+                resourceId = R.string.callFailed_low_battery;
+                break;
+
+            case android.telephony.DisconnectCause.DIAL_LOW_BATTERY:
+                resourceId = R.string.dialFailed_low_battery;
+                break;
+
             case android.telephony.DisconnectCause.CDMA_NOT_EMERGENCY:
                 // Only emergency calls are allowed when in emergency callback mode.
                 resourceId = R.string.incall_error_ecm_emergency_only;