diff options
author | 2024-06-12 10:54:42 -0700 | |
---|---|---|
committer | 2024-06-13 11:20:32 -0700 | |
commit | fcb9e91de5b86bc3ca2a784e7c1589bf86d8b73c (patch) | |
tree | 589cf08adad36cce5a56fdc88d93185ed1341143 | |
parent | 6b2a39902715f96257f4b98414b7491dbb27acb9 (diff) |
Make SUPL satellite message constrained
SUPL request can bring up unrestricted network depending on carrier config KEY_SATELLITE_DATA_SUPPORT_MODE_INT, in which case the network is constrained and thus SUPL request needs to be constrained.
Test: data browsing + voice call
Test: reviewed BR
Bug: 339688297
Change-Id: I5010804e43e861a200ca8f5112ba98f11a317812
-rw-r--r-- | services/core/java/com/android/server/location/gnss/GnssNetworkConnectivityHandler.java | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/location/gnss/GnssNetworkConnectivityHandler.java b/services/core/java/com/android/server/location/gnss/GnssNetworkConnectivityHandler.java index 880787e8664c..12495bb4f2cc 100644 --- a/services/core/java/com/android/server/location/gnss/GnssNetworkConnectivityHandler.java +++ b/services/core/java/com/android/server/location/gnss/GnssNetworkConnectivityHandler.java @@ -619,7 +619,18 @@ class GnssNetworkConnectivityHandler { ServiceState state = telephonyManager.getServiceState(); if (state != null && state.isUsingNonTerrestrialNetwork()) { networkRequestBuilder.removeCapability(NET_CAPABILITY_NOT_RESTRICTED); - networkRequestBuilder.addTransportType(NetworkCapabilities.TRANSPORT_SATELLITE); + try { + networkRequestBuilder.addTransportType(NetworkCapabilities + .TRANSPORT_SATELLITE); + networkRequestBuilder.removeCapability(NetworkCapabilities + .NET_CAPABILITY_NOT_BANDWIDTH_CONSTRAINED); + } catch (IllegalArgumentException ignored) { + // In case TRANSPORT_SATELLITE or NET_CAPABILITY_NOT_BANDWIDTH_CONSTRAINED + // are not recognized, meaning an old connectivity module runs on new + // android in which case no network with such capabilities will be brought + // up, so it's safe to ignore the exception. + // TODO: Can remove the try-catch in next quarter release. + } } } } |