diff options
author | 2025-03-19 13:50:43 -0700 | |
---|---|---|
committer | 2025-03-19 13:50:43 -0700 | |
commit | 931613514c790807aa4a292140568820d8a754b3 (patch) | |
tree | bc6bbb18aa425e32687e7c1e1c821f968238d6cd /src | |
parent | 5b8c294481c94bf5cf10f6a2b5ce6f36caf16176 (diff) | |
parent | 67411ed9fc6aa97d68ce66f67c82c71838ee1173 (diff) |
Merge "Check data registration state in isCellularAvailable" into main
Diffstat (limited to 'src')
-rw-r--r-- | src/java/com/android/internal/telephony/satellite/SatelliteServiceUtils.java | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/java/com/android/internal/telephony/satellite/SatelliteServiceUtils.java b/src/java/com/android/internal/telephony/satellite/SatelliteServiceUtils.java index 3e77bd9d38..318e8cf65e 100644 --- a/src/java/com/android/internal/telephony/satellite/SatelliteServiceUtils.java +++ b/src/java/com/android/internal/telephony/satellite/SatelliteServiceUtils.java @@ -533,8 +533,17 @@ public class SatelliteServiceUtils { ServiceState serviceState = phone.getServiceState(); if (serviceState != null) { int state = serviceState.getState(); + NetworkRegistrationInfo dataNri = serviceState.getNetworkRegistrationInfo( + NetworkRegistrationInfo.DOMAIN_PS, + AccessNetworkConstants.TRANSPORT_TYPE_WWAN); + boolean isCellularDataInService = dataNri != null && dataNri.isInService(); + logd("isCellularAvailable: phoneId=" + phone.getPhoneId() + " state=" + state + + " isEmergencyOnly=" + serviceState.isEmergencyOnly() + + " isCellularDataInService=" + isCellularDataInService); + if ((state == STATE_IN_SERVICE || state == STATE_EMERGENCY_ONLY - || serviceState.isEmergencyOnly()) + || serviceState.isEmergencyOnly() + || isCellularDataInService) && !isSatellitePlmn(phone.getSubId(), serviceState)) { logd("isCellularAvailable true"); return true; |