Merge "[Settings] Hide data usage when SIM support is turn OFF"

This commit is contained in:
Bonian Chen
2022-11-10 11:21:20 +00:00
committed by Android (Google) Code Review
7 changed files with 93 additions and 17 deletions

View File

@@ -45,6 +45,7 @@ import androidx.recyclerview.widget.RecyclerView;
import com.android.settings.R;
import com.android.settings.applications.AppInfoBase;
import com.android.settings.network.SubscriptionUtil;
import com.android.settings.widget.EntityHeaderController;
import com.android.settingslib.AppItem;
import com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
@@ -109,6 +110,10 @@ public class AppDataUsage extends DataUsageBaseFragment implements OnPreferenceC
private long mSelectedCycle;
private boolean mIsLoading;
public boolean isSimHardwareVisible(Context context) {
return SubscriptionUtil.isSimHardwareVisible(context);
}
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
@@ -161,7 +166,7 @@ public class AppDataUsage extends DataUsageBaseFragment implements OnPreferenceC
final UidDetailProvider uidDetailProvider = getUidDetailProvider();
if (mAppItem.key > 0) {
if (!UserHandle.isApp(mAppItem.key)) {
if ((!isSimHardwareVisible(mContext)) || !UserHandle.isApp(mAppItem.key)) {
final UidDetail uidDetail = uidDetailProvider.getUidDetail(mAppItem.key, true);
mIcon = uidDetail.icon;
mLabel = uidDetail.label;
@@ -328,6 +333,9 @@ public class AppDataUsage extends DataUsageBaseFragment implements OnPreferenceC
}
private void updatePrefs(boolean restrictBackground, boolean unrestrictData) {
if (!isSimHardwareVisible(mContext)) {
return;
}
setBackPreferenceListAnimatorIfLoaded();
final EnforcedAdmin admin = RestrictedLockUtilsInternal.checkIfMeteredDataRestricted(
mContext, mPackageName, UserHandle.getUserId(mAppItem.key));

View File

@@ -45,6 +45,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.search.BaseSearchIndexProvider;
import com.android.settingslib.NetworkPolicyEditor;
import com.android.settingslib.net.DataUsageController;
@@ -105,6 +106,10 @@ public class BillingCycleSettings extends DataUsageBaseFragment implements
super.onCreate(icicle);
final Context context = getContext();
if (!SubscriptionUtil.isSimHardwareVisible(context)) {
finish();
return;
}
mDataUsageController = new DataUsageController(context);
Bundle args = getArguments();
@@ -512,7 +517,8 @@ public class BillingCycleSettings extends DataUsageBaseFragment implements
@Override
protected boolean isPageSearchEnabled(Context context) {
return DataUsageUtils.hasMobileData(context);
return SubscriptionUtil.isSimHardwareVisible(context)
&& DataUsageUtils.hasMobileData(context);
}
};

View File

@@ -75,11 +75,19 @@ public class DataUsageSummary extends DataUsageBaseFragment implements DataUsage
return R.string.help_url_data_usage;
}
public boolean isSimHardwareVisible(Context context) {
return SubscriptionUtil.isSimHardwareVisible(context);
}
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
Context context = getContext();
if (!isSimHardwareVisible(context)) {
finish();
return;
}
enableProxySubscriptionManager(context);
boolean hasMobileData = DataUsageUtils.hasMobileData(context);
@@ -137,6 +145,9 @@ public class DataUsageSummary extends DataUsageBaseFragment implements DataUsage
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
final Activity activity = getActivity();
final ArrayList<AbstractPreferenceController> controllers = new ArrayList<>();
if (!isSimHardwareVisible(context)) {
return controllers;
}
mSummaryController =
new DataUsageSummaryPreferenceController(activity, getSettingsLifecycle(), this,
DataUsageUtils.getDefaultSubscriptionId(activity));