Merge "Hide carrier service package in Wi-Fi data usage settings" into udc-dev

This commit is contained in:
Treehugger Robot
2023-05-10 10:59:27 +00:00
committed by Android (Google) Code Review
2 changed files with 14 additions and 6 deletions

View File

@@ -165,11 +165,7 @@ public class DataUsageList extends DataUsageBaseFragment
} }
processArgument(); processArgument();
mMobileNetworkRepository = MobileNetworkRepository.getInstance(getContext()); updateSubscriptionInfoEntity();
ThreadUtils.postOnBackgroundThread(() -> {
mSubscriptionInfoEntity = mMobileNetworkRepository.getSubInfoById(
String.valueOf(mSubId));
});
mDataStateListener = new MobileDataEnabledListener(activity, this); mDataStateListener = new MobileDataEnabledListener(activity, this);
} }
@@ -294,6 +290,15 @@ public class DataUsageList extends DataUsageBaseFragment
} }
} }
@VisibleForTesting
void updateSubscriptionInfoEntity() {
mMobileNetworkRepository = MobileNetworkRepository.getInstance(getContext());
ThreadUtils.postOnBackgroundThread(() -> {
mSubscriptionInfoEntity = mMobileNetworkRepository.getSubInfoById(
String.valueOf(mSubId));
});
}
/** /**
* Implementation of {@code MobileDataEnabledListener.Client} * Implementation of {@code MobileDataEnabledListener.Client}
*/ */
@@ -503,11 +508,13 @@ public class DataUsageList extends DataUsageBaseFragment
Collections.sort(items); Collections.sort(items);
final List<String> packageNames = Arrays.asList(getContext().getResources().getStringArray( final List<String> packageNames = Arrays.asList(getContext().getResources().getStringArray(
R.array.datausage_hiding_carrier_service_package_names)); R.array.datausage_hiding_carrier_service_package_names));
// When there is no specified SubscriptionInfo, Wi-Fi data usage will be displayed.
// In this case, the carrier service package also needs to be hidden.
boolean shouldHidePackageName = mSubscriptionInfoEntity != null boolean shouldHidePackageName = mSubscriptionInfoEntity != null
? Arrays.stream(getContext().getResources().getIntArray( ? Arrays.stream(getContext().getResources().getIntArray(
R.array.datausage_hiding_carrier_service_carrier_id)) R.array.datausage_hiding_carrier_service_carrier_id))
.anyMatch(carrierId -> (carrierId == mSubscriptionInfoEntity.carrierId)) .anyMatch(carrierId -> (carrierId == mSubscriptionInfoEntity.carrierId))
: false; : true;
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); UidDetail detail = mUidDetailProvider.getUidDetail(items.get(i).key, true);

View File

@@ -106,6 +106,7 @@ public class DataUsageListTest {
ReflectionHelpers.setField(mDataUsageList, "services", mNetworkServices); ReflectionHelpers.setField(mDataUsageList, "services", mNetworkServices);
doReturn(mLoaderManager).when(mDataUsageList).getLoaderManager(); doReturn(mLoaderManager).when(mDataUsageList).getLoaderManager();
mDataUsageList.mLoadingViewController = mock(LoadingViewController.class); mDataUsageList.mLoadingViewController = mock(LoadingViewController.class);
doNothing().when(mDataUsageList).updateSubscriptionInfoEntity();
} }
@Test @Test