summaryrefslogtreecommitdiff
path: root/location/java
diff options
context:
space:
mode:
author TreeHugger Robot <treehugger-gerrit@google.com> 2022-07-22 19:34:13 +0000
committer Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> 2022-07-22 19:34:13 +0000
commit5f17a4e8d271a0c062938c138bf8d52c15b4b240 (patch)
tree3fa7f3ed01c8f513a6e5aa34514887c882603008 /location/java
parentcd671e384bef7cf3037663546c3861e1e2157c27 (diff)
parentaf45c48f8e41184db9406f02a358fd3787522be9 (diff)
Merge "Handle emergency SUPL on active SIM" into tm-d1-dev am: 45811541cf am: 5e93561cb9 am: af45c48f8e
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/19290988 Change-Id: Ifd73b36a9012f6fb370c2aa6a656cac3ed0d7226 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
Diffstat (limited to 'location/java')
-rw-r--r--location/java/com/android/internal/location/GpsNetInitiatedHandler.java14
1 files changed, 14 insertions, 0 deletions
diff --git a/location/java/com/android/internal/location/GpsNetInitiatedHandler.java b/location/java/com/android/internal/location/GpsNetInitiatedHandler.java
index 190e1cc083bd..fba4249260ef 100644
--- a/location/java/com/android/internal/location/GpsNetInitiatedHandler.java
+++ b/location/java/com/android/internal/location/GpsNetInitiatedHandler.java
@@ -142,6 +142,14 @@ public class GpsNetInitiatedHandler {
public int textEncoding;
}
+ /** Callbacks for Emergency call events. */
+ public interface EmergencyCallCallback {
+ /** Callback invoked when an emergency call starts */
+ void onEmergencyCallStart(int subId);
+ /** Callback invoked when an emergency call ends */
+ void onEmergencyCallEnd();
+ }
+
private class EmergencyCallListener extends TelephonyCallback implements
TelephonyCallback.OutgoingEmergencyCallListener,
TelephonyCallback.CallStateListener {
@@ -152,6 +160,7 @@ public class GpsNetInitiatedHandler {
int subscriptionId) {
mIsInEmergencyCall = true;
if (DEBUG) Log.d(TAG, "onOutgoingEmergencyCall(): inEmergency = " + getInEmergency());
+ mEmergencyCallCallback.onEmergencyCallStart(subscriptionId);
}
@Override
@@ -163,6 +172,7 @@ public class GpsNetInitiatedHandler {
if (mIsInEmergencyCall) {
mCallEndElapsedRealtimeMillis = SystemClock.elapsedRealtime();
mIsInEmergencyCall = false;
+ mEmergencyCallCallback.onEmergencyCallEnd();
}
}
}
@@ -180,8 +190,11 @@ public class GpsNetInitiatedHandler {
*/
private Notification.Builder mNiNotificationBuilder;
+ private final EmergencyCallCallback mEmergencyCallCallback;
+
public GpsNetInitiatedHandler(Context context,
INetInitiatedListener netInitiatedListener,
+ EmergencyCallCallback emergencyCallCallback,
boolean isSuplEsEnabled) {
mContext = context;
@@ -190,6 +203,7 @@ public class GpsNetInitiatedHandler {
} else {
mNetInitiatedListener = netInitiatedListener;
}
+ mEmergencyCallCallback = emergencyCallCallback;
setSuplEsEnabled(isSuplEsEnabled);
mLocationManager = (LocationManager)context.getSystemService(Context.LOCATION_SERVICE);