[Settings] User with restriction should avoid from having entries
through Settings search 1. Avoid from generating search report when user been restricted. 2. Guest user should have this restriction but not available, add additional rule as a conpensation from UI's perspective. Bug: 260860114 Test: local Change-Id: I63ba7f3b10fc812dd1498f17826a15e822879613
This commit is contained in:
@@ -46,6 +46,7 @@ import androidx.preference.SwitchPreference;
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
|
||||
import com.android.settings.network.SubscriptionUtil;
|
||||
import com.android.settings.network.telephony.MobileNetworkUtils;
|
||||
import com.android.settings.search.BaseSearchIndexProvider;
|
||||
import com.android.settingslib.NetworkPolicyEditor;
|
||||
import com.android.settingslib.net.DataUsageController;
|
||||
@@ -517,7 +518,8 @@ public class BillingCycleSettings extends DataUsageBaseFragment implements
|
||||
|
||||
@Override
|
||||
protected boolean isPageSearchEnabled(Context context) {
|
||||
return SubscriptionUtil.isSimHardwareVisible(context)
|
||||
return (!MobileNetworkUtils.isMobileNetworkUserRestricted(context))
|
||||
&& SubscriptionUtil.isSimHardwareVisible(context)
|
||||
&& DataUsageUtils.hasMobileData(context);
|
||||
}
|
||||
};
|
||||
|
@@ -49,6 +49,7 @@ import android.os.Bundle;
|
||||
import android.os.PersistableBundle;
|
||||
import android.os.SystemClock;
|
||||
import android.os.SystemProperties;
|
||||
import android.os.UserManager;
|
||||
import android.provider.Settings;
|
||||
import android.telecom.PhoneAccountHandle;
|
||||
import android.telecom.TelecomManager;
|
||||
@@ -114,6 +115,23 @@ public class MobileNetworkUtils {
|
||||
public static final int NO_CELL_DATA_TYPE_ICON = 0;
|
||||
public static final Drawable EMPTY_DRAWABLE = new ColorDrawable(Color.TRANSPARENT);
|
||||
|
||||
/**
|
||||
* Return true if current user limited by UserManager.DISALLOW_CONFIG_MOBILE_NETWORKS.
|
||||
*
|
||||
* Note: Guest user should have this restriction through
|
||||
* GuestTelephonyPreferenceController.java.
|
||||
* However, it's not help with those devices upgraded their software.
|
||||
*/
|
||||
public static boolean isMobileNetworkUserRestricted(Context context) {
|
||||
UserManager um = context.getSystemService(UserManager.class);
|
||||
boolean disallow = false;
|
||||
if (um != null) {
|
||||
disallow = um.isGuestUser() || um.hasUserRestriction(
|
||||
UserManager.DISALLOW_CONFIG_MOBILE_NETWORKS);
|
||||
}
|
||||
return disallow;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns if DPC APNs are enforced.
|
||||
*/
|
||||
|
Reference in New Issue
Block a user