From 41f6bcebaf5fc687097f47411aacce7cc93d61d1 Mon Sep 17 00:00:00 2001 From: Wyatt Riley Date: Tue, 13 Dec 2016 10:45:29 -0800 Subject: [PATCH] Restoring Network Available Notification to AGnssRil Adds connectivity notification back for SUPL specific case, needed esp. for case where WiFi is off and a general purpose connectivity notification doesn't fire. Bug: 33350903 Fixes: 33350903 Test: On device GPS-still-works checked, as well as notifications going into HAL on airplane mode on/off, and SUPL call flows (Further AGnssRil check to be done by partners) Change-Id: I02af0b839d0bfd21dfefedff743208e02ab9c2dd --- .../com/android/server/location/GnssLocationProvider.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/services/core/java/com/android/server/location/GnssLocationProvider.java b/services/core/java/com/android/server/location/GnssLocationProvider.java index 56ba5bbc72af1..fb2b961fce77c 100644 --- a/services/core/java/com/android/server/location/GnssLocationProvider.java +++ b/services/core/java/com/android/server/location/GnssLocationProvider.java @@ -457,6 +457,7 @@ public class GnssLocationProvider implements LocationProviderInterface { if (mDownloadXtraDataPending == STATE_PENDING_NETWORK) { xtraDownloadRequest(); } + // Always on, notify HAL so it can get data it needs sendMessage(UPDATE_NETWORK_STATE, 0 /*arg*/, network); } }; @@ -468,6 +469,12 @@ public class GnssLocationProvider implements LocationProviderInterface { */ private final ConnectivityManager.NetworkCallback mSuplConnectivityCallback = new ConnectivityManager.NetworkCallback() { + @Override + public void onAvailable(Network network) { + // Specific to a change to a SUPL enabled network becoming ready + sendMessage(UPDATE_NETWORK_STATE, 0 /*arg*/, network); + } + @Override public void onLost(Network network) { releaseSuplConnection(GPS_RELEASE_AGPS_DATA_CONN);