Merge "Do not enable modem scan in satellite mode if device does not want to enable TN scanning in satellite session" into main
diff --git a/src/java/com/android/internal/telephony/satellite/SatelliteSessionController.java b/src/java/com/android/internal/telephony/satellite/SatelliteSessionController.java
index b2861d3..f2f4cac 100644
--- a/src/java/com/android/internal/telephony/satellite/SatelliteSessionController.java
+++ b/src/java/com/android/internal/telephony/satellite/SatelliteSessionController.java
@@ -874,10 +874,19 @@
stopNbIotInactivityTimer();
//Enable Cellular Modem scanning
- Message onCompleted =
+ boolean configSatelliteAllowTnScanningDuringSatelliteSession =
+ mContext.getResources().getBoolean(
+ R.bool.config_satellite_allow_tn_scanning_during_satellite_session);
+ if (configSatelliteAllowTnScanningDuringSatelliteSession) {
+ Message onCompleted =
obtainMessage(EVENT_ENABLE_CELLULAR_MODEM_WHILE_SATELLITE_MODE_IS_ON_DONE);
- mSatelliteModemInterface.enableCellularModemWhileSatelliteModeIsOn(true, onCompleted);
- if (isConcurrentTnScanningSupported()) {
+ mSatelliteModemInterface
+ .enableCellularModemWhileSatelliteModeIsOn(true, onCompleted);
+ } else {
+ plogd("Device does not allow cellular modem scanning");
+ }
+ if (isConcurrentTnScanningSupported()
+ || !configSatelliteAllowTnScanningDuringSatelliteSession) {
plogd("IDLE state is hidden from clients");
} else {
notifyStateChangedEvent(SatelliteManager.SATELLITE_MODEM_STATE_IDLE);
diff --git a/tests/telephonytests/src/com/android/internal/telephony/satellite/SatelliteSessionControllerTest.java b/tests/telephonytests/src/com/android/internal/telephony/satellite/SatelliteSessionControllerTest.java
index 8c1ae50..0d11fed 100644
--- a/tests/telephonytests/src/com/android/internal/telephony/satellite/SatelliteSessionControllerTest.java
+++ b/tests/telephonytests/src/com/android/internal/telephony/satellite/SatelliteSessionControllerTest.java
@@ -150,7 +150,9 @@
when(resources.getBoolean(
R.bool.config_satellite_modem_support_concurrent_tn_scanning))
.thenReturn(false);
-
+ when(resources.getBoolean(
+ R.bool.config_satellite_allow_tn_scanning_during_satellite_session))
+ .thenReturn(true);
when(mFeatureFlags.satellitePersistentLogging()).thenReturn(true);
when(mMockSatelliteController.isSatelliteAttachRequired()).thenReturn(false);
when(mMockSatelliteController.isSatelliteRoamingP2pSmSSupported(