Merge "[Settings] Hide package name if needed" into udc-dev am: 26810aa0c5
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/22221905 Change-Id: I24b8b36cc1c02f77b35da674561e9e7ad7ef558b Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -710,4 +710,9 @@
|
|||||||
<item></item>
|
<item></item>
|
||||||
</string-array>
|
</string-array>
|
||||||
|
|
||||||
|
<!-- List of packages that should be hidden for MVNO. Do not translate -->
|
||||||
|
<string-array name="datausage_hiding_carrier_service_package_names" translatable="false"/>
|
||||||
|
|
||||||
|
<!-- List of MVNO. Do not translate -->
|
||||||
|
<integer-array name="datausage_hiding_carrier_service_carrier_id" translatable="false"/>
|
||||||
</resources>
|
</resources>
|
||||||
|
@@ -58,15 +58,20 @@ import com.android.settings.R;
|
|||||||
import com.android.settings.core.SubSettingLauncher;
|
import com.android.settings.core.SubSettingLauncher;
|
||||||
import com.android.settings.datausage.CycleAdapter.SpinnerInterface;
|
import com.android.settings.datausage.CycleAdapter.SpinnerInterface;
|
||||||
import com.android.settings.network.MobileDataEnabledListener;
|
import com.android.settings.network.MobileDataEnabledListener;
|
||||||
|
import com.android.settings.network.MobileNetworkRepository;
|
||||||
import com.android.settings.network.ProxySubscriptionManager;
|
import com.android.settings.network.ProxySubscriptionManager;
|
||||||
import com.android.settings.widget.LoadingViewController;
|
import com.android.settings.widget.LoadingViewController;
|
||||||
import com.android.settingslib.AppItem;
|
import com.android.settingslib.AppItem;
|
||||||
|
import com.android.settingslib.mobile.dataservice.SubscriptionInfoEntity;
|
||||||
import com.android.settingslib.net.NetworkCycleChartData;
|
import com.android.settingslib.net.NetworkCycleChartData;
|
||||||
import com.android.settingslib.net.NetworkCycleChartDataLoader;
|
import com.android.settingslib.net.NetworkCycleChartDataLoader;
|
||||||
import com.android.settingslib.net.NetworkStatsSummaryLoader;
|
import com.android.settingslib.net.NetworkStatsSummaryLoader;
|
||||||
|
import com.android.settingslib.net.UidDetail;
|
||||||
import com.android.settingslib.net.UidDetailProvider;
|
import com.android.settingslib.net.UidDetailProvider;
|
||||||
|
import com.android.settingslib.utils.ThreadUtils;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Arrays;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
@@ -118,6 +123,8 @@ public class DataUsageList extends DataUsageBaseFragment
|
|||||||
private Preference mUsageAmount;
|
private Preference mUsageAmount;
|
||||||
private PreferenceGroup mApps;
|
private PreferenceGroup mApps;
|
||||||
private View mHeader;
|
private View mHeader;
|
||||||
|
private MobileNetworkRepository mMobileNetworkRepository;
|
||||||
|
private SubscriptionInfoEntity mSubscriptionInfoEntity;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getMetricsCategory() {
|
public int getMetricsCategory() {
|
||||||
@@ -146,6 +153,11 @@ public class DataUsageList extends DataUsageBaseFragment
|
|||||||
}
|
}
|
||||||
|
|
||||||
processArgument();
|
processArgument();
|
||||||
|
mMobileNetworkRepository = MobileNetworkRepository.getInstance(getContext());
|
||||||
|
ThreadUtils.postOnBackgroundThread(() -> {
|
||||||
|
mSubscriptionInfoEntity = mMobileNetworkRepository.getSubInfoById(
|
||||||
|
String.valueOf(mSubId));
|
||||||
|
});
|
||||||
mDataStateListener = new MobileDataEnabledListener(activity, this);
|
mDataStateListener = new MobileDataEnabledListener(activity, this);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -451,7 +463,23 @@ public class DataUsageList extends DataUsageBaseFragment
|
|||||||
}
|
}
|
||||||
|
|
||||||
Collections.sort(items);
|
Collections.sort(items);
|
||||||
|
final List<String> packageNames = Arrays.asList(getContext().getResources().getStringArray(
|
||||||
|
R.array.datausage_hiding_carrier_service_package_names));
|
||||||
|
boolean shouldHidePackageName = mSubscriptionInfoEntity != null
|
||||||
|
? Arrays.stream(getContext().getResources().getIntArray(
|
||||||
|
R.array.datausage_hiding_carrier_service_carrier_id))
|
||||||
|
.anyMatch(carrierId -> (carrierId == mSubscriptionInfoEntity.carrierId))
|
||||||
|
: false;
|
||||||
|
|
||||||
for (int i = 0; i < items.size(); i++) {
|
for (int i = 0; i < items.size(); i++) {
|
||||||
|
UidDetail detail = mUidDetailProvider.getUidDetail(items.get(i).key, true);
|
||||||
|
// Do not show carrier service package in data usage list if it should be hidden for
|
||||||
|
// the carrier.
|
||||||
|
if (detail != null && shouldHidePackageName && packageNames.contains(
|
||||||
|
detail.packageName)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
final int percentTotal = largest != 0 ? (int) (items.get(i).total * 100 / largest) : 0;
|
final int percentTotal = largest != 0 ? (int) (items.get(i).total * 100 / largest) : 0;
|
||||||
final AppDataUsagePreference preference = new AppDataUsagePreference(getContext(),
|
final AppDataUsagePreference preference = new AppDataUsagePreference(getContext(),
|
||||||
items.get(i), percentTotal, mUidDetailProvider);
|
items.get(i), percentTotal, mUidDetailProvider);
|
||||||
|
Reference in New Issue
Block a user