summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Hai Zhang <zhanghai@google.com> 2019-03-18 16:06:19 -0700
committer Hai Zhang <zhanghai@google.com> 2019-03-20 14:38:13 -0700
commit953a8032a8a3efaba9ab0ddea69c2b697ee8e456 (patch)
tree7d375a433c9b33fd71a47744d513a1025ffef75b
parentfbc4c76b24615143096680003caf15112be6472d (diff)
Add system API for whether emergency assistance is enabled.
This is needed in the emergency role. Bug: 124452117 Test: build Change-Id: I277ad208dfa07d42f3e2daee658d30ef831d4b9b
-rw-r--r--api/system-current.txt1
-rw-r--r--data/etc/privapp-permissions-platform.xml1
-rw-r--r--telephony/java/android/telephony/TelephonyManager.java18
3 files changed, 20 insertions, 0 deletions
diff --git a/api/system-current.txt b/api/system-current.txt
index fff05607492a..5756631d9f90 100644
--- a/api/system-current.txt
+++ b/api/system-current.txt
@@ -8049,6 +8049,7 @@ package android.telephony {
method @NonNull @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String iccTransmitApduBasicChannelBySlot(int, int, int, int, int, int, @Nullable String);
method @Nullable @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public String iccTransmitApduLogicalChannelBySlot(int, int, int, int, int, int, int, @Nullable String);
method public boolean isDataConnectivityPossible();
+ method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isEmergencyAssistanceEnabled();
method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isIdle();
method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, android.Manifest.permission.READ_PHONE_STATE}) public boolean isOffhook();
method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public boolean isPotentialEmergencyNumber(@NonNull String);
diff --git a/data/etc/privapp-permissions-platform.xml b/data/etc/privapp-permissions-platform.xml
index fcd5d566f250..9d23f7b65f52 100644
--- a/data/etc/privapp-permissions-platform.xml
+++ b/data/etc/privapp-permissions-platform.xml
@@ -124,6 +124,7 @@ applications that come with the platform
<permission name="android.permission.UPDATE_APP_OPS_STATS"/>
<permission name="android.permission.REQUEST_INCIDENT_REPORT_APPROVAL"/>
<permission name="android.permission.APPROVE_INCIDENT_REPORTS"/>
+ <permission name="android.permission.READ_PRIVILEGED_PHONE_STATE" />
</privapp-permissions>
<privapp-permissions package="com.android.phone">
diff --git a/telephony/java/android/telephony/TelephonyManager.java b/telephony/java/android/telephony/TelephonyManager.java
index c91f16b7deba..4cbeacccf1fb 100644
--- a/telephony/java/android/telephony/TelephonyManager.java
+++ b/telephony/java/android/telephony/TelephonyManager.java
@@ -10188,6 +10188,24 @@ public class TelephonyManager {
}
/**
+ * Determine whether the emergency assistance feature is available on the device.
+ * <p>
+ * Requires permission: {@link android.Manifest.permission#READ_PRIVILEGED_PHONE_STATE}
+ *
+ * @return whether the emergency assistance feature is available on the device
+ *
+ * @hide
+ */
+ @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE)
+ @SystemApi
+ public boolean isEmergencyAssistanceEnabled() {
+ mContext.enforceCallingOrSelfPermission(
+ android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE,
+ "isEmergencyAssistanceEnabled");
+ return EMERGENCY_ASSISTANCE_ENABLED;
+ }
+
+ /**
* Get the emergency number list based on current locale, sim, default, modem and network.
*
* <p>In each returned list, the emergency number {@link EmergencyNumber} coming from higher