Merge "[Settings] configuration for hidding SIM remove UI"
This commit is contained in:
@@ -37,6 +37,7 @@
|
||||
<Preference
|
||||
android:key="erase_euicc_data"
|
||||
android:title="@string/reset_esim_title"
|
||||
settings:isPreferenceVisible="@bool/config_show_sim_info"
|
||||
settings:controller="com.android.settings.network.EraseEuiccDataController" />
|
||||
|
||||
<!-- Factory reset -->
|
||||
|
@@ -63,6 +63,7 @@ import androidx.annotation.VisibleForTesting;
|
||||
|
||||
import com.android.settings.core.InstrumentedFragment;
|
||||
import com.android.settings.enterprise.ActionDisabledByAdminDialogHelper;
|
||||
import com.android.settings.network.SubscriptionUtil;
|
||||
import com.android.settings.password.ChooseLockSettingsHelper;
|
||||
import com.android.settings.password.ConfirmLockPattern;
|
||||
import com.android.settingslib.RestrictedLockUtilsInternal;
|
||||
@@ -375,6 +376,14 @@ public class MainClear extends InstrumentedFragment implements OnGlobalLayoutLis
|
||||
mScrollView.getViewTreeObserver().addOnGlobalLayoutListener(this);
|
||||
}
|
||||
|
||||
/**
|
||||
* Whether to show any UI which is SIM related.
|
||||
*/
|
||||
@VisibleForTesting
|
||||
boolean showAnySubscriptionInfo(Context context) {
|
||||
return (context != null) && SubscriptionUtil.isSimHardwareVisible(context);
|
||||
}
|
||||
|
||||
/**
|
||||
* Whether to show strings indicating that the eUICC will be wiped.
|
||||
*
|
||||
@@ -384,7 +393,7 @@ public class MainClear extends InstrumentedFragment implements OnGlobalLayoutLis
|
||||
@VisibleForTesting
|
||||
boolean showWipeEuicc() {
|
||||
Context context = getContext();
|
||||
if (!isEuiccEnabled(context)) {
|
||||
if (!showAnySubscriptionInfo(context) || !isEuiccEnabled(context)) {
|
||||
return false;
|
||||
}
|
||||
ContentResolver cr = context.getContentResolver();
|
||||
|
@@ -239,6 +239,9 @@ public class ResetNetwork extends InstrumentedFragment {
|
||||
}
|
||||
|
||||
private List<SubscriptionInfo> getActiveSubscriptionInfoList() {
|
||||
if (!SubscriptionUtil.isSimHardwareVisible(getActivity())) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
SubscriptionManager mgr = getActivity().getSystemService(SubscriptionManager.class);
|
||||
if (mgr == null) {
|
||||
Log.w(TAG, "No SubscriptionManager");
|
||||
@@ -264,6 +267,9 @@ public class ResetNetwork extends InstrumentedFragment {
|
||||
}
|
||||
|
||||
private boolean showEuiccSettings(Context context) {
|
||||
if (!SubscriptionUtil.isSimHardwareVisible(context)) {
|
||||
return false;
|
||||
}
|
||||
EuiccManager euiccManager =
|
||||
(EuiccManager) context.getSystemService(Context.EUICC_SERVICE);
|
||||
if (!euiccManager.isEnabled()) {
|
||||
|
@@ -51,7 +51,8 @@ public class EraseEuiccDataController extends BasePreferenceController {
|
||||
|
||||
@Override
|
||||
public int getAvailabilityStatus() {
|
||||
return mContext.getPackageManager().hasSystemFeature(
|
||||
return SubscriptionUtil.isSimHardwareVisible(mContext) &&
|
||||
mContext.getPackageManager().hasSystemFeature(
|
||||
PackageManager.FEATURE_TELEPHONY_EUICC) ? AVAILABLE_UNSEARCHABLE
|
||||
: UNSUPPORTED_ON_DEVICE;
|
||||
}
|
||||
|
@@ -102,7 +102,10 @@ public class MainClearTest {
|
||||
@Before
|
||||
public void setUp() {
|
||||
MockitoAnnotations.initMocks(this);
|
||||
mMainClear = spy(new MainClear());
|
||||
mMainClear = spy(new MainClear() {
|
||||
@Override
|
||||
boolean showAnySubscriptionInfo(Context context) { return true; }
|
||||
});
|
||||
mActivity = Robolectric.setupActivity(FragmentActivity.class);
|
||||
mShadowActivity = Shadows.shadowOf(mActivity);
|
||||
UserManager userManager = mActivity.getSystemService(UserManager.class);
|
||||
|
Reference in New Issue
Block a user