diff options
Diffstat (limited to 'services/QualifiedNetworksService/src/com/android')
-rw-r--r-- | services/QualifiedNetworksService/src/com/android/telephony/qns/AccessNetworkEvaluator.java | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/services/QualifiedNetworksService/src/com/android/telephony/qns/AccessNetworkEvaluator.java b/services/QualifiedNetworksService/src/com/android/telephony/qns/AccessNetworkEvaluator.java index d708f2d..ae1a32d 100644 --- a/services/QualifiedNetworksService/src/com/android/telephony/qns/AccessNetworkEvaluator.java +++ b/services/QualifiedNetworksService/src/com/android/telephony/qns/AccessNetworkEvaluator.java @@ -675,7 +675,11 @@ class AccessNetworkEvaluator { log( "onEmergencyPreferredTransportTypeChanged transport:" + QnsConstants.transportTypeToString(transport)); - if (mDataConnectionStatusTracker.isInactiveState()) { + if (mDataConnectionStatusTracker.isInactiveState() + || (mDataConnectionStatusTracker.isActiveState() + && mCallType == QnsConstants.CALL_TYPE_IDLE)) { + // If data network state is inactive OR active but call is not active yet, + // QNS will follow domain selection's decision. enforceNotifyQualifiedNetworksWithTransportType(transport); } else { log( @@ -1170,7 +1174,7 @@ class AccessNetworkEvaluator { } log("evaluate reason:" + evaluateSpecificReasonToString(specificReason)); if (mNetCapability == NetworkCapabilities.NET_CAPABILITY_EIMS - && mDataConnectionStatusTracker.isInactiveState()) { + && !mDataConnectionStatusTracker.isActiveState()) { log("QNS only handles HO of EMERGENCY data connection"); return; } |