diff --git a/Android.bp b/Android.bp
index 2c3b2ec9435..0116237a1e4 100644
--- a/Android.bp
+++ b/Android.bp
@@ -59,7 +59,6 @@ android_library {
"com.google.android.material_material",
"setupcompat",
"setupdesign",
- "androidx-constraintlayout_constraintlayout-solver",
"androidx.lifecycle_lifecycle-runtime",
"androidx.lifecycle_lifecycle-extensions",
"guava",
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 6e82b11ad29..3fddf39e544 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -2973,6 +2973,12 @@
android:value="true" />
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 1669e769b3a..275ffab1df2 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -13351,9 +13351,9 @@
Allow access to wallet from lock screen and quick settings
- Show QR Code Scanner
+ Show QR Scanner
- Allow access to QR code scanner from lock screen
+ Allow access to QR scanner from lock screen
Show device controls
diff --git a/res/xml/user_settings.xml b/res/xml/user_settings.xml
index 5cafa1a977e..b3dc2ea583f 100644
--- a/res/xml/user_settings.xml
+++ b/res/xml/user_settings.xml
@@ -43,6 +43,12 @@
android:icon="@drawable/ic_add_40dp"
android:order="20"/>
+
+
createUser());
+ }
+
+ private void createUserAsync(final NewUserRequest request,
+ final Consumer onResponse) {
+ Objects.requireNonNull(onResponse);
+
+ final Handler mMainThread = new Handler(Looper.getMainLooper());
+ Executors.newSingleThreadExecutor().execute(() -> {
+ final NewUserResponse response = mUserManager.createUser(request);
+ mMainThread.post(() -> onResponse.accept(response));
+ });
+ }
+
+ private void createUser() {
+ final NewUserRequest request = new NewUserRequest.Builder().build();
+
+ final AlertDialog pleaseWaitDialog = new AlertDialog.Builder(this)
+ .setMessage(getString(R.string.creating_new_user_dialog_message))
+ .setCancelable(false)
+ .create();
+
+ pleaseWaitDialog.show();
+ createUserAsync(request, response -> {
+ pleaseWaitDialog.dismiss();
+
+ if (response.isSuccessful()) {
+ mActivityManager.switchUser(response.getUser());
+ finish();
+ } else {
+ new AlertDialog.Builder(this)
+ .setTitle(getString(R.string.add_user_failed))
+ .setMessage(UserManager.UserOperationResult.class.getName()
+ + " = " + response.getOperationResult())
+ .setNeutralButton(getString(R.string.okay), null)
+ .show();
+ }
+ });
+ }
+}
diff --git a/src/com/android/settings/users/UserSettings.java b/src/com/android/settings/users/UserSettings.java
index 096b6ee300f..c3f04396d69 100644
--- a/src/com/android/settings/users/UserSettings.java
+++ b/src/com/android/settings/users/UserSettings.java
@@ -115,6 +115,7 @@ public class UserSettings extends SettingsPreferenceFragment
private static final String KEY_USER_GUEST = "user_guest";
private static final String KEY_ADD_GUEST = "guest_add";
private static final String KEY_ADD_USER = "user_add";
+ private static final String KEY_ADD_SUPERVISED_USER = "supervised_user_add";
private static final String KEY_ADD_USER_WHEN_LOCKED = "user_settings_add_users_when_locked";
private static final String KEY_MULTIUSER_TOP_INTRO = "multiuser_top_intro";
@@ -165,10 +166,13 @@ public class UserSettings extends SettingsPreferenceFragment
@VisibleForTesting
RestrictedPreference mAddUser;
@VisibleForTesting
+ RestrictedPreference mAddSupervisedUser;
+ @VisibleForTesting
SparseArray mUserIcons = new SparseArray<>();
private int mRemovingUserId = -1;
private boolean mAddingUser;
private boolean mGuestUserAutoCreated;
+ private String mConfigSupervisedUserCreationPackage;
private String mAddingUserName;
private UserCapabilities mUserCaps;
private boolean mShouldUpdateUserList = true;
@@ -300,6 +304,10 @@ public class UserSettings extends SettingsPreferenceFragment
}
mAddUser.setOnPreferenceClickListener(this);
+ setConfigSupervisedUserCreationPackage();
+ mAddSupervisedUser = findPreference(KEY_ADD_SUPERVISED_USER);
+ mAddSupervisedUser.setOnPreferenceClickListener(this);
+
activity.registerReceiverAsUser(
mUserChangeReceiver, UserHandle.ALL, USER_REMOVED_INTENT_FILTER, null, mHandler);
@@ -491,6 +499,21 @@ public class UserSettings extends SettingsPreferenceFragment
}
}
+ private void onAddSupervisedUserClicked() {
+ final Intent intent = new Intent()
+ .setAction(UserManager.ACTION_CREATE_SUPERVISED_USER)
+ .setPackage(mConfigSupervisedUserCreationPackage);
+
+ // TODO(b/209659998): [to-be-removed] fallback activity for supervised user creation.
+ if (getActivity().getPackageManager().resolveActivity(intent, 0) == null) {
+ intent
+ .setClass(getContext(), AddSupervisedUserActivity.class)
+ .setPackage(null);
+ }
+
+ startActivity(intent);
+ }
+
private void onRemoveUserClicked(int userId) {
synchronized (mUserLock) {
if (mRemovingUserId == -1 && !mAddingUser) {
@@ -1058,6 +1081,7 @@ public class UserSettings extends SettingsPreferenceFragment
updateAddGuest(context, users.stream().anyMatch(UserInfo::isGuest));
updateAddUser(context);
+ updateAddSupervisedUser(context);
if (!mUserCaps.mUserSwitcherEnabled) {
return;
@@ -1070,6 +1094,12 @@ public class UserSettings extends SettingsPreferenceFragment
}
+ @VisibleForTesting
+ void setConfigSupervisedUserCreationPackage() {
+ mConfigSupervisedUserCreationPackage = getPrefContext().getString(
+ com.android.internal.R.string.config_supervisedUserCreationPackage);
+ }
+
private boolean isCurrentUserGuest() {
return mUserCaps.mIsGuest;
}
@@ -1100,28 +1130,41 @@ public class UserSettings extends SettingsPreferenceFragment
}
private void updateAddUser(Context context) {
+ updateAddUserCommon(context, mAddUser, mUserCaps.mCanAddRestrictedProfile);
+ }
+
+ private void updateAddSupervisedUser(Context context) {
+ if (!TextUtils.isEmpty(mConfigSupervisedUserCreationPackage)) {
+ updateAddUserCommon(context, mAddSupervisedUser, false);
+ } else {
+ mAddSupervisedUser.setVisible(false);
+ }
+ }
+
+ private void updateAddUserCommon(Context context, RestrictedPreference addUser,
+ boolean canAddRestrictedProfile) {
if ((mUserCaps.mCanAddUser || mUserCaps.mDisallowAddUserSetByAdmin)
&& WizardManagerHelper.isDeviceProvisioned(context)
&& mUserCaps.mUserSwitcherEnabled) {
- mAddUser.setVisible(true);
- mAddUser.setSelectable(true);
+ addUser.setVisible(true);
+ addUser.setSelectable(true);
final boolean canAddMoreUsers =
mUserManager.canAddMoreUsers(UserManager.USER_TYPE_FULL_SECONDARY)
- || (mUserCaps.mCanAddRestrictedProfile
+ || (canAddRestrictedProfile
&& mUserManager.canAddMoreUsers(UserManager.USER_TYPE_FULL_RESTRICTED));
- mAddUser.setEnabled(canAddMoreUsers && !mAddingUser && canSwitchUserNow());
+ addUser.setEnabled(canAddMoreUsers && !mAddingUser && canSwitchUserNow());
if (!canAddMoreUsers) {
- mAddUser.setSummary(
+ addUser.setSummary(
getString(R.string.user_add_max_count, getRealUsersCount()));
} else {
- mAddUser.setSummary(null);
+ addUser.setSummary(null);
}
- if (mAddUser.isEnabled()) {
- mAddUser.setDisabledByAdmin(
+ if (addUser.isEnabled()) {
+ addUser.setDisabledByAdmin(
mUserCaps.mDisallowAddUser ? mUserCaps.mEnforcedAdmin : null);
}
} else {
- mAddUser.setVisible(false);
+ addUser.setVisible(false);
}
}
@@ -1206,6 +1249,9 @@ public class UserSettings extends SettingsPreferenceFragment
onAddUserClicked(USER_TYPE_USER);
}
return true;
+ } else if (pref == mAddSupervisedUser) {
+ onAddSupervisedUserClicked();
+ return true;
} else if (pref == mAddGuest) {
mAddGuest.setEnabled(false); // prevent multiple tap issue
mMetricsFeatureProvider.action(getActivity(), SettingsEnums.ACTION_USER_GUEST_ADD);
diff --git a/src/com/android/settings/wifi/calling/WifiCallingSliceHelper.java b/src/com/android/settings/wifi/calling/WifiCallingSliceHelper.java
index 36363419dfc..c73bffa7411 100644
--- a/src/com/android/settings/wifi/calling/WifiCallingSliceHelper.java
+++ b/src/com/android/settings/wifi/calling/WifiCallingSliceHelper.java
@@ -179,7 +179,8 @@ public class WifiCallingSliceHelper {
.setTitle(res.getText(R.string.wifi_calling_settings_title))
.addEndItem(
SliceAction.createToggle(
- getBroadcastIntent(ACTION_WIFI_CALLING_CHANGED),
+ getBroadcastIntent(ACTION_WIFI_CALLING_CHANGED,
+ isWifiCallingEnabled),
null /* actionTitle */, isWifiCallingEnabled))
.setPrimaryAction(SliceAction.createDeeplink(
getActivityIntent(ACTION_WIFI_CALLING_SETTINGS_ACTIVITY),
@@ -316,7 +317,7 @@ public class WifiCallingSliceHelper {
final Resources res = getResourcesForSubId(subId);
return new RowBuilder()
.setTitle(res.getText(preferenceTitleResId))
- .setTitleItem(SliceAction.createToggle(getBroadcastIntent(action),
+ .setTitleItem(SliceAction.createToggle(getBroadcastIntent(action, checked),
icon, res.getText(preferenceTitleResId), checked));
}
@@ -370,25 +371,31 @@ public class WifiCallingSliceHelper {
public void handleWifiCallingChanged(Intent intent) {
final int subId = getDefaultVoiceSubId();
- if (SubscriptionManager.isValidSubscriptionId(subId)) {
+ if (SubscriptionManager.isValidSubscriptionId(subId)
+ && intent.hasExtra(EXTRA_TOGGLE_STATE)) {
final WifiCallingQueryImsState queryState = queryImsState(subId);
if (queryState.isWifiCallingProvisioned()) {
- final boolean currentValue = queryState.isEnabledByUser()
- && queryState.isAllowUserControl();
+ final boolean currentValue = isWifiCallingEnabled();
final boolean newValue = intent.getBooleanExtra(EXTRA_TOGGLE_STATE,
currentValue);
final Intent activationAppIntent =
getWifiCallingCarrierActivityIntent(subId);
- if (!newValue || activationAppIntent == null) {
+ if ((newValue == currentValue) && activationAppIntent == null) {
// If either the action is to turn off wifi calling setting
// or there is no activation involved - Update the setting
- if (newValue != currentValue) {
- final ImsMmTelManager imsMmTelManager = getImsMmTelManager(subId);
- imsMmTelManager.setVoWiFiSettingEnabled(newValue);
- }
+ final ImsMmTelManager imsMmTelManager = getImsMmTelManager(subId);
+ imsMmTelManager.setVoWiFiSettingEnabled(!newValue);
+ } else {
+ Log.w(TAG, "action not taken: subId " + subId
+ + " from " + currentValue + " to " + newValue);
}
+ } else {
+ Log.w(TAG, "action not taken: subId " + subId + " needs provision");
}
+ } else {
+ Log.w(TAG, "action not taken: subId " + subId);
}
+
// notify change in slice in any case to get re-queried. This would result in displaying
// appropriate message with the updated setting.
mContext.getContentResolver().notifyChange(WIFI_CALLING_URI, null);
@@ -541,10 +548,20 @@ public class WifiCallingSliceHelper {
PendingIntent.FLAG_IMMUTABLE);
}
- private PendingIntent getBroadcastIntent(String action) {
+ /**
+ * Create PendingIntent for Slice.
+ * Note: SliceAction#createDeeplink() didn't support toggle status so far,
+ * therefore, embedding toggle status within PendingIntent.
+ *
+ * @param action Slice action
+ * @param isChecked Status when Slice created.
+ * @return PendingIntent
+ */
+ private PendingIntent getBroadcastIntent(String action, boolean isChecked) {
final Intent intent = new Intent(action);
intent.setClass(mContext, SliceBroadcastReceiver.class);
intent.addFlags(Intent.FLAG_RECEIVER_FOREGROUND);
+ intent.putExtra(EXTRA_TOGGLE_STATE, isChecked);
return PendingIntent.getBroadcast(mContext, 0 /* requestCode */, intent,
PendingIntent.FLAG_CANCEL_CURRENT | PendingIntent.FLAG_IMMUTABLE);
}
diff --git a/tests/robotests/Android.bp b/tests/robotests/Android.bp
index bc25377ed7d..2945bef1dda 100644
--- a/tests/robotests/Android.bp
+++ b/tests/robotests/Android.bp
@@ -37,7 +37,6 @@ android_app {
"com.google.android.material_material",
"setupcompat",
"setupdesign",
- "androidx-constraintlayout_constraintlayout-solver",
"androidx.lifecycle_lifecycle-runtime",
"androidx.lifecycle_lifecycle-extensions",
"androidx.test.core",
diff --git a/tests/robotests/src/com/android/settings/network/MobileNetworkSummaryControllerTest.java b/tests/robotests/src/com/android/settings/network/MobileNetworkSummaryControllerTest.java
index 6870e7ac8a3..b60bfb83d66 100644
--- a/tests/robotests/src/com/android/settings/network/MobileNetworkSummaryControllerTest.java
+++ b/tests/robotests/src/com/android/settings/network/MobileNetworkSummaryControllerTest.java
@@ -212,86 +212,6 @@ public class MobileNetworkSummaryControllerTest {
}
@Test
- @Ignore
- public void getSummary_twoSubscriptions_correctSummaryAndFragment() {
- FeatureFlagUtils.setEnabled(mContext, FeatureFlagUtils.SETTINGS_PROVIDER_MODEL, false);
- final SubscriptionInfo sub1 = mock(SubscriptionInfo.class);
- final SubscriptionInfo sub2 = mock(SubscriptionInfo.class);
- when(sub1.getSubscriptionId()).thenReturn(1);
- when(sub2.getSubscriptionId()).thenReturn(2);
-
- SubscriptionUtil.setAvailableSubscriptionsForTesting(Arrays.asList(sub1, sub2));
- mController.displayPreference(mPreferenceScreen);
- mController.onResume();
- assertThat(mController.getSummary()).isEqualTo("2 SIMs");
- assertThat(mPreference.getFragment()).isEqualTo(MobileNetworkListFragment.class.getName());
- }
-
- @Test
- @Ignore
- public void getSummaryAfterUpdate_twoSubscriptionsBecomesOne_correctSummaryAndFragment() {
- FeatureFlagUtils.setEnabled(mContext, FeatureFlagUtils.SETTINGS_PROVIDER_MODEL, false);
- final SubscriptionInfo sub1 = mock(SubscriptionInfo.class);
- final SubscriptionInfo sub2 = mock(SubscriptionInfo.class);
- when(sub1.getSubscriptionId()).thenReturn(1);
- when(sub2.getSubscriptionId()).thenReturn(2);
- when(sub1.getDisplayName()).thenReturn("sub1");
- when(sub2.getDisplayName()).thenReturn("sub2");
-
- SubscriptionUtil.setAvailableSubscriptionsForTesting(Arrays.asList(sub1, sub2));
- SubscriptionUtil.setActiveSubscriptionsForTesting(Arrays.asList(sub1, sub2));
- mController.displayPreference(mPreferenceScreen);
- mController.onResume();
- assertThat(mController.getSummary()).isEqualTo("2 SIMs");
- assertThat(mPreference.getFragment()).isEqualTo(MobileNetworkListFragment.class.getName());
-
- // Simulate sub2 having disappeared - the end result should change to be the same as
- // if there were just one subscription.
- SubscriptionUtil.setAvailableSubscriptionsForTesting(Arrays.asList(sub1));
- mController.onSubscriptionsChanged();
- assertThat(mController.getSummary()).isEqualTo("sub1");
- assertThat(mPreference.getFragment()).isNull();
- final ArgumentCaptor intentCaptor = ArgumentCaptor.forClass(Intent.class);
- doNothing().when(mContext).startActivity(intentCaptor.capture());
- mPreference.getOnPreferenceClickListener().onPreferenceClick(mPreference);
- assertThat(intentCaptor.getValue().getComponent().getClassName()).isEqualTo(
- MobileNetworkActivity.class.getName());
- }
-
- @Test
- @Ignore
- public void getSummaryAfterUpdate_oneSubscriptionBecomesTwo_correctSummaryAndFragment() {
- FeatureFlagUtils.setEnabled(mContext, FeatureFlagUtils.SETTINGS_PROVIDER_MODEL, false);
- final SubscriptionInfo sub1 = mock(SubscriptionInfo.class);
- final SubscriptionInfo sub2 = mock(SubscriptionInfo.class);
- when(sub1.getSubscriptionId()).thenReturn(1);
- when(sub2.getSubscriptionId()).thenReturn(2);
- when(sub1.getDisplayName()).thenReturn("sub1");
- when(sub2.getDisplayName()).thenReturn("sub2");
-
- when(mSubscriptionManager.getAvailableSubscriptionInfoList()).thenReturn(
- Arrays.asList(sub1));
- SubscriptionUtil.setActiveSubscriptionsForTesting(Arrays.asList(sub1));
- mController.displayPreference(mPreferenceScreen);
- mController.onResume();
- assertThat(mController.getSummary()).isEqualTo("sub1");
- assertThat(mPreference.getFragment()).isNull();
- final ArgumentCaptor intentCaptor = ArgumentCaptor.forClass(Intent.class);
- doNothing().when(mContext).startActivity(intentCaptor.capture());
- mPreference.getOnPreferenceClickListener().onPreferenceClick(mPreference);
- assertThat(intentCaptor.getValue().getComponent().getClassName()).isEqualTo(
- MobileNetworkActivity.class.getName());
-
- // Simulate sub2 appearing in the list of subscriptions and check the results.
- SubscriptionUtil.setAvailableSubscriptionsForTesting(Arrays.asList(sub1, sub2));
- mController.displayPreference(mPreferenceScreen);
- mController.onResume();
- assertThat(mController.getSummary()).isEqualTo("2 SIMs");
- assertThat(mPreference.getFragment()).isEqualTo(MobileNetworkListFragment.class.getName());
- }
-
- @Test
- @Ignore
public void getSummary_providerModel_Enabled() {
final SubscriptionInfo sub1 = mock(SubscriptionInfo.class);
final SubscriptionInfo sub2 = mock(SubscriptionInfo.class);
@@ -302,15 +222,9 @@ public class MobileNetworkSummaryControllerTest {
SubscriptionUtil.setAvailableSubscriptionsForTesting(Arrays.asList(sub1, sub2));
SubscriptionUtil.setActiveSubscriptionsForTesting(Arrays.asList(sub1, sub2));
- FeatureFlagUtils.setEnabled(mContext, FeatureFlagUtils.SETTINGS_PROVIDER_MODEL, true);
mController.displayPreference(mPreferenceScreen);
mController.onResume();
assertThat(mController.getSummary()).isEqualTo("sub1, sub2");
-
- FeatureFlagUtils.setEnabled(mContext, FeatureFlagUtils.SETTINGS_PROVIDER_MODEL, false);
- mController.displayPreference(mPreferenceScreen);
- mController.onResume();
- assertThat(mController.getSummary()).isEqualTo("2 SIMs");
}
@Test
diff --git a/tests/robotests/src/com/android/settings/users/UserSettingsTest.java b/tests/robotests/src/com/android/settings/users/UserSettingsTest.java
index 9d357977a6c..d8f3959c6d7 100644
--- a/tests/robotests/src/com/android/settings/users/UserSettingsTest.java
+++ b/tests/robotests/src/com/android/settings/users/UserSettingsTest.java
@@ -59,6 +59,7 @@ import androidx.preference.PreferenceScreen;
import com.android.settings.SettingsActivity;
import com.android.settings.SubSettings;
+import com.android.settings.testutils.shadow.SettingsShadowResources;
import com.android.settings.testutils.shadow.ShadowDevicePolicyManager;
import com.android.settings.testutils.shadow.ShadowUserManager;
import com.android.settingslib.RestrictedLockUtils;
@@ -85,7 +86,11 @@ import java.util.Collections;
import java.util.List;
@RunWith(RobolectricTestRunner.class)
-@Config(shadows = {ShadowUserManager.class, ShadowDevicePolicyManager.class})
+@Config(shadows = {
+ ShadowUserManager.class,
+ ShadowDevicePolicyManager.class,
+ SettingsShadowResources.class,
+})
public class UserSettingsTest {
private static final String KEY_USER_GUEST = "user_guest";
@@ -111,6 +116,8 @@ public class UserSettingsTest {
@Mock
private RestrictedPreference mAddUserPreference;
@Mock
+ private RestrictedPreference mAddSupervisedUserPreference;
+ @Mock
private RestrictedPreference mAddGuestPreference;
@Mock
private UserManager mUserManager;
@@ -161,6 +168,7 @@ public class UserSettingsTest {
mFragment.mMePreference = mMePreference;
mFragment.mAddUser = mAddUserPreference;
+ mFragment.mAddSupervisedUser = mAddSupervisedUserPreference;
mFragment.mAddGuest = mAddGuestPreference;
mFragment.mUserListCategory = mock(PreferenceCategory.class);
}
@@ -169,6 +177,7 @@ public class UserSettingsTest {
public void tearDown() {
Settings.Global.putInt(mContext.getContentResolver(),
Settings.Global.DEVICE_PROVISIONED, mProvisionedBackupValue);
+ SettingsShadowResources.reset();
}
@Test
@@ -694,6 +703,36 @@ public class UserSettingsTest {
verify(mUserManager).getUsers();
}
+ private void setConfigSupervisedUserCreationPackage(String value) {
+ SettingsShadowResources.overrideResource(
+ com.android.internal.R.string.config_supervisedUserCreationPackage,
+ value
+ );
+ mFragment.setConfigSupervisedUserCreationPackage();
+ mUserCapabilities.mCanAddUser = true;
+ mFragment.updateUserList();
+ }
+
+ @Test
+ public void addSupervisedUserOption_resourceIsDefined_shouldBeDisplayed() {
+ try {
+ setConfigSupervisedUserCreationPackage("test");
+ verify(mAddSupervisedUserPreference).setVisible(true);
+ } finally {
+ SettingsShadowResources.reset();
+ }
+ }
+
+ @Test
+ public void addSupervisedUserOption_resourceIsNotDefined_shouldBeHidden() {
+ try {
+ setConfigSupervisedUserCreationPackage("");
+ verify(mAddSupervisedUserPreference).setVisible(false);
+ } finally {
+ SettingsShadowResources.reset();
+ }
+ }
+
private void givenUsers(UserInfo... userInfo) {
List users = Arrays.asList(userInfo);
doReturn(users).when(mUserManager).getUsers();
diff --git a/tests/unit/src/com/android/settings/network/telephony/NetworkProviderBackupCallingGroupTest.java b/tests/unit/src/com/android/settings/network/telephony/NetworkProviderBackupCallingGroupTest.java
index e7a6af39319..8396f1b6a33 100644
--- a/tests/unit/src/com/android/settings/network/telephony/NetworkProviderBackupCallingGroupTest.java
+++ b/tests/unit/src/com/android/settings/network/telephony/NetworkProviderBackupCallingGroupTest.java
@@ -153,7 +153,6 @@ public class NetworkProviderBackupCallingGroupTest {
@Test
public void
shouldShowBackupCallingForSub_crossSimDisabled_returnFalse() {
- FeatureFlagUtils.setEnabled(mContext, FeatureFlagUtils.SETTINGS_PROVIDER_MODEL, true);
doReturn(false).when(mNetworkProviderBackupCallingGroup).isCrossSimEnabledByPlatform(
mContext, SUB_ID_1);
@@ -163,7 +162,6 @@ public class NetworkProviderBackupCallingGroupTest {
@Test
public void shouldBackupCallingForSub_crossSimEnabled_returnTrue() {
- FeatureFlagUtils.setEnabled(mContext, FeatureFlagUtils.SETTINGS_PROVIDER_MODEL, true);
doReturn(true).when(mNetworkProviderBackupCallingGroup).isCrossSimEnabledByPlatform(
mContext, SUB_ID_1);
diff --git a/tests/unit/src/com/android/settings/network/telephony/NetworkProviderWifiCallingGroupTest.java b/tests/unit/src/com/android/settings/network/telephony/NetworkProviderWifiCallingGroupTest.java
index 660772ed99f..9cd12fe09cf 100644
--- a/tests/unit/src/com/android/settings/network/telephony/NetworkProviderWifiCallingGroupTest.java
+++ b/tests/unit/src/com/android/settings/network/telephony/NetworkProviderWifiCallingGroupTest.java
@@ -147,7 +147,6 @@ public class NetworkProviderWifiCallingGroupTest {
@Test
public void
shouldShowWifiCallingForSub_wifiCallingDisabledWithWifiCallingNotReady_returnFalse() {
- FeatureFlagUtils.setEnabled(mContext, FeatureFlagUtils.SETTINGS_PROVIDER_MODEL, true);
setWifiCallingEnabled(false);
doReturn(mMockQueryWfcState).when(mNetworkProviderWifiCallingGroup).queryImsState(SUB_ID);
@@ -157,7 +156,6 @@ public class NetworkProviderWifiCallingGroupTest {
@Test
public void shouldShowWifiCallingForSub_wifiCallingEnabledWithWifiCallingIsReady_returnTrue() {
- FeatureFlagUtils.setEnabled(mContext, FeatureFlagUtils.SETTINGS_PROVIDER_MODEL, true);
setWifiCallingEnabled(true);
doReturn(mMockQueryWfcState).when(mNetworkProviderWifiCallingGroup).queryImsState(SUB_ID);
@@ -168,7 +166,6 @@ public class NetworkProviderWifiCallingGroupTest {
@Test
public void
shouldShowWifiCallingForSub_wifiCallingDisabledWithNoActivityHandleIntent_returnFalse() {
- FeatureFlagUtils.setEnabled(mContext, FeatureFlagUtils.SETTINGS_PROVIDER_MODEL, true);
buildPhoneAccountConfigureIntent(false);
doReturn(mMockQueryWfcState).when(mNetworkProviderWifiCallingGroup).queryImsState(SUB_ID);
doReturn(mPhoneAccountHandle).when(mNetworkProviderWifiCallingGroup)
@@ -181,7 +178,6 @@ public class NetworkProviderWifiCallingGroupTest {
@Test
public void
shouldShowWifiCallingForSub_wifiCallingEnabledWithActivityHandleIntent_returnTrue() {
- FeatureFlagUtils.setEnabled(mContext, FeatureFlagUtils.SETTINGS_PROVIDER_MODEL, true);
buildPhoneAccountConfigureIntent(true);
doReturn(mMockQueryWfcState).when(mNetworkProviderWifiCallingGroup).queryImsState(SUB_ID);
doReturn(mPhoneAccountHandle).when(mNetworkProviderWifiCallingGroup)