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