Merge "[Settings] configuration for hidding SIM settings UI"

This commit is contained in:
Bonian Chen
2022-11-22 08:51:53 +00:00
committed by Gerrit Code Review
5 changed files with 37 additions and 2 deletions

View File

@@ -60,6 +60,10 @@ public class MobileNetworkListFragment extends DashboardFragment {
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
final List<AbstractPreferenceController> controllers = new ArrayList<>();
if (!SubscriptionUtil.isSimHardwareVisible(getContext())) {
finish();
return controllers;
}
NetworkProviderSimsCategoryController simCategoryPrefCtrl =
new NetworkProviderSimsCategoryController(context, KEY_PREFERENCE_CATEGORY_SIM,
@@ -88,7 +92,8 @@ public class MobileNetworkListFragment extends DashboardFragment {
@Override
protected boolean isPageSearchEnabled(Context context) {
return context.getSystemService(UserManager.class).isAdminUser();
return SubscriptionUtil.isSimHardwareVisible(context) &&
context.getSystemService(UserManager.class).isAdminUser();
}
};
}

View File

@@ -120,6 +120,10 @@ public class MobileNetworkSettings extends AbstractMobileNetworkSettings {
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
if (!SubscriptionUtil.isSimHardwareVisible(context)) {
finish();
return Arrays.asList();
}
if (getArguments() == null) {
Intent intent = getIntent();
if (intent != null) {
@@ -398,7 +402,8 @@ public class MobileNetworkSettings extends AbstractMobileNetworkSettings {
/** suppress full page if user is not admin */
@Override
protected boolean isPageSearchEnabled(Context context) {
return context.getSystemService(UserManager.class).isAdminUser();
return SubscriptionUtil.isSimHardwareVisible(context) &&
context.getSystemService(UserManager.class).isAdminUser();
}
};

View File

@@ -261,6 +261,9 @@ public class MobileNetworkUtils {
* the user has enabled development mode.
*/
public static boolean showEuiccSettings(Context context) {
if (!SubscriptionUtil.isSimHardwareVisible(context)) {
return false;
}
long timeForAccess = SystemClock.elapsedRealtime();
try {
Boolean isShow = ((Future<Boolean>) ThreadUtils.postOnBackgroundThread(() -> {
@@ -1010,6 +1013,10 @@ public class MobileNetworkUtils {
}
public static void launchMobileNetworkSettings(Context context, SubscriptionInfo info) {
if (!SubscriptionUtil.isSimHardwareVisible(context)) {
Log.e(TAG, "launchMobileNetworkSettings fail, device without such UI.");
return;
}
final int subId = info.getSubscriptionId();
if (subId == SubscriptionManager.INVALID_SUBSCRIPTION_ID) {
Log.d(TAG, "launchMobileNetworkSettings fail, subId is invalid.");