Loading src/java/com/android/internal/telephony/data/DataSettingsManager.java +2 −1 Original line number Diff line number Diff line Loading @@ -44,6 +44,7 @@ import android.util.LocalLog; import com.android.internal.telephony.GlobalSettingsHelper; import com.android.internal.telephony.Phone; import com.android.internal.telephony.PhoneConstants; import com.android.internal.telephony.SettingsObserver; import com.android.internal.telephony.SubscriptionController; import com.android.internal.telephony.data.DataConfigManager.DataConfigManagerCallback; Loading Loading @@ -712,7 +713,7 @@ public class DataSettingsManager extends Handler { // mobile data policy : data during call if (isMobileDataPolicyEnabled(TelephonyManager .MOBILE_DATA_POLICY_DATA_ON_NON_DEFAULT_DURING_VOICE_CALL)) { overridden = isNonDds; overridden = isNonDds && mPhone.getState() != PhoneConstants.State.IDLE; } return overridden; } Loading tests/telephonytests/src/com/android/internal/telephony/data/DataNetworkControllerTest.java +11 −2 Original line number Diff line number Diff line Loading @@ -1625,8 +1625,6 @@ public class DataNetworkControllerTest extends TelephonyTest { @Test public void testIsDataEnabledOverriddenForApn_dataDuringCall() throws Exception { // Note: we don't check phone call status in DSMGR as the check should already been done in // PhoneSwitcher when routing requests. doReturn(1).when(mPhone).getSubId(); doReturn(2).when(mSubscriptionController).getDefaultDataSubId(); // Data disabled Loading @@ -1638,6 +1636,17 @@ public class DataNetworkControllerTest extends TelephonyTest { .MOBILE_DATA_POLICY_DATA_ON_NON_DEFAULT_DURING_VOICE_CALL, true); processAllMessages(); // No active phone call doReturn(PhoneConstants.State.IDLE).when(mPhone).getState(); mDataNetworkControllerUT.addNetworkRequest( createNetworkRequest(NetworkCapabilities.NET_CAPABILITY_INTERNET)); processAllMessages(); // Verify no internet connection due to no active phone call verifyNoConnectedNetworkHasCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET); // Phone ringing doReturn(PhoneConstants.State.RINGING).when(mPhone).getState(); mDataNetworkControllerUT.addNetworkRequest( createNetworkRequest(NetworkCapabilities.NET_CAPABILITY_INTERNET)); processAllMessages(); Loading Loading
src/java/com/android/internal/telephony/data/DataSettingsManager.java +2 −1 Original line number Diff line number Diff line Loading @@ -44,6 +44,7 @@ import android.util.LocalLog; import com.android.internal.telephony.GlobalSettingsHelper; import com.android.internal.telephony.Phone; import com.android.internal.telephony.PhoneConstants; import com.android.internal.telephony.SettingsObserver; import com.android.internal.telephony.SubscriptionController; import com.android.internal.telephony.data.DataConfigManager.DataConfigManagerCallback; Loading Loading @@ -712,7 +713,7 @@ public class DataSettingsManager extends Handler { // mobile data policy : data during call if (isMobileDataPolicyEnabled(TelephonyManager .MOBILE_DATA_POLICY_DATA_ON_NON_DEFAULT_DURING_VOICE_CALL)) { overridden = isNonDds; overridden = isNonDds && mPhone.getState() != PhoneConstants.State.IDLE; } return overridden; } Loading
tests/telephonytests/src/com/android/internal/telephony/data/DataNetworkControllerTest.java +11 −2 Original line number Diff line number Diff line Loading @@ -1625,8 +1625,6 @@ public class DataNetworkControllerTest extends TelephonyTest { @Test public void testIsDataEnabledOverriddenForApn_dataDuringCall() throws Exception { // Note: we don't check phone call status in DSMGR as the check should already been done in // PhoneSwitcher when routing requests. doReturn(1).when(mPhone).getSubId(); doReturn(2).when(mSubscriptionController).getDefaultDataSubId(); // Data disabled Loading @@ -1638,6 +1636,17 @@ public class DataNetworkControllerTest extends TelephonyTest { .MOBILE_DATA_POLICY_DATA_ON_NON_DEFAULT_DURING_VOICE_CALL, true); processAllMessages(); // No active phone call doReturn(PhoneConstants.State.IDLE).when(mPhone).getState(); mDataNetworkControllerUT.addNetworkRequest( createNetworkRequest(NetworkCapabilities.NET_CAPABILITY_INTERNET)); processAllMessages(); // Verify no internet connection due to no active phone call verifyNoConnectedNetworkHasCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET); // Phone ringing doReturn(PhoneConstants.State.RINGING).when(mPhone).getState(); mDataNetworkControllerUT.addNetworkRequest( createNetworkRequest(NetworkCapabilities.NET_CAPABILITY_INTERNET)); processAllMessages(); Loading