diff --git a/src/com/android/settings/network/telephony/MobileNetworkUtils.java b/src/com/android/settings/network/telephony/MobileNetworkUtils.java index 02455a18c5f..38f659603fe 100644 --- a/src/com/android/settings/network/telephony/MobileNetworkUtils.java +++ b/src/com/android/settings/network/telephony/MobileNetworkUtils.java @@ -940,28 +940,11 @@ public class MobileNetworkUtils { * Copied from WifiCallingPreferenceController#isWifiCallingEnabled() */ public static boolean isWifiCallingEnabled(Context context, int subId, - @Nullable WifiCallingQueryImsState queryImsState, - @Nullable PhoneAccountHandle phoneAccountHandle) { - if (phoneAccountHandle == null){ - phoneAccountHandle = context.getSystemService(TelecomManager.class) - .getSimCallManagerForSubscription(subId); + @Nullable WifiCallingQueryImsState queryImsState) { + if (queryImsState == null) { + queryImsState = new WifiCallingQueryImsState(context, subId); } - boolean isWifiCallingEnabled; - if (phoneAccountHandle != null) { - final Intent intent = buildPhoneAccountConfigureIntent(context, phoneAccountHandle); - if (intent == null) { - Log.d(TAG, "Can not get phoneAccount configure intent."); - isWifiCallingEnabled = false; - } else { - isWifiCallingEnabled = true; - } - } else { - if (queryImsState == null) { - queryImsState = new WifiCallingQueryImsState(context, subId); - } - isWifiCallingEnabled = queryImsState.isReadyToWifiCalling(); - } - return isWifiCallingEnabled; + return queryImsState.isReadyToWifiCalling(); } /** diff --git a/src/com/android/settings/network/telephony/NetworkProviderWifiCallingGroup.java b/src/com/android/settings/network/telephony/NetworkProviderWifiCallingGroup.java index 7ad9e03a1a8..ebfb283a05d 100644 --- a/src/com/android/settings/network/telephony/NetworkProviderWifiCallingGroup.java +++ b/src/com/android/settings/network/telephony/NetworkProviderWifiCallingGroup.java @@ -22,7 +22,6 @@ import android.content.Context; import android.content.Intent; import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; -import android.os.PersistableBundle; import android.provider.Settings; import android.telecom.PhoneAccountHandle; import android.telecom.TelecomManager; @@ -314,8 +313,7 @@ public class NetworkProviderWifiCallingGroup extends @VisibleForTesting protected boolean shouldShowWifiCallingForSub(int subId) { if (SubscriptionManager.isValidSubscriptionId(subId) - && MobileNetworkUtils.isWifiCallingEnabled(mContext, subId, queryImsState(subId), - null)) { + && MobileNetworkUtils.isWifiCallingEnabled(mContext, subId, queryImsState(subId))) { return true; } return false; diff --git a/src/com/android/settings/network/telephony/WifiCallingPreferenceController.java b/src/com/android/settings/network/telephony/WifiCallingPreferenceController.java index 1bc2f908e3d..03cc23f606f 100644 --- a/src/com/android/settings/network/telephony/WifiCallingPreferenceController.java +++ b/src/com/android/settings/network/telephony/WifiCallingPreferenceController.java @@ -71,7 +71,7 @@ public class WifiCallingPreferenceController extends TelephonyBasePreferenceCont @Override public int getAvailabilityStatus(int subId) { return SubscriptionManager.isValidSubscriptionId(subId) - && MobileNetworkUtils.isWifiCallingEnabled(mContext, subId, null, null) + && MobileNetworkUtils.isWifiCallingEnabled(mContext, subId, null) ? AVAILABLE : UNSUPPORTED_ON_DEVICE; } diff --git a/src/com/android/settings/wifi/calling/WifiCallingSettings.java b/src/com/android/settings/wifi/calling/WifiCallingSettings.java index 42ce1b13bab..0c3457ca77f 100644 --- a/src/com/android/settings/wifi/calling/WifiCallingSettings.java +++ b/src/com/android/settings/wifi/calling/WifiCallingSettings.java @@ -257,8 +257,10 @@ public class WifiCallingSettings extends SettingsPreferenceFragment for (SubscriptionInfo subInfo : subInfoList) { int subId = subInfo.getSubscriptionId(); try { - if (MobileNetworkUtils.isWifiCallingEnabled(getContext(), subId, - queryImsState(subId), null)) { + if (MobileNetworkUtils.isWifiCallingEnabled( + getContext(), + subId, + queryImsState(subId))) { selectedList.add(subInfo); } } catch (Exception exception) {} diff --git a/tests/unit/src/com/android/settings/network/telephony/MobileNetworkUtilsTest.java b/tests/unit/src/com/android/settings/network/telephony/MobileNetworkUtilsTest.java index f954ea4f5cd..1043fdfcd59 100644 --- a/tests/unit/src/com/android/settings/network/telephony/MobileNetworkUtilsTest.java +++ b/tests/unit/src/com/android/settings/network/telephony/MobileNetworkUtilsTest.java @@ -385,35 +385,19 @@ public class MobileNetworkUtilsTest { } @Test - public void isWifiCallingEnabled_hasPhoneAccountHandleAndHasActivityHandleIntent_returnTrue() { - buildPhoneAccountConfigureIntent(true); - - assertTrue(MobileNetworkUtils.isWifiCallingEnabled(mContext, SUB_ID_1, - null, mPhoneAccountHandle)); - } - - @Test - public void isWifiCallingEnabled_hasPhoneAccountHandleAndNoActivityHandleIntent_returnFalse() { - buildPhoneAccountConfigureIntent(false); - - assertFalse(MobileNetworkUtils.isWifiCallingEnabled(mContext, SUB_ID_1, - null, mPhoneAccountHandle)); - } - - @Test - public void isWifiCallingEnabled_noPhoneAccountHandleAndWifiCallingIsReady_returnTrue() { + public void isWifiCallingEnabled_wifiCallingIsReady_returnTrue() { setWifiCallingEnabled(true); assertTrue(MobileNetworkUtils.isWifiCallingEnabled(mContext, SUB_ID_1, - mMockQueryWfcState, null)); + mMockQueryWfcState)); } @Test - public void isWifiCallingEnabled_noPhoneAccountHandleAndWifiCallingNotReady_returnFalse() { + public void isWifiCallingEnabled_wifiCallingNotReady_returnFalse() { setWifiCallingEnabled(false); assertFalse(MobileNetworkUtils.isWifiCallingEnabled(mContext, SUB_ID_1, - mMockQueryWfcState, null)); + mMockQueryWfcState)); } private void setWifiCallingEnabled(boolean enabled){