diff --git a/packages/SettingsLib/src/com/android/settingslib/net/DataUsageController.java b/packages/SettingsLib/src/com/android/settingslib/net/DataUsageController.java index 18f537d77ce68..cff45c6be0e0e 100644 --- a/packages/SettingsLib/src/com/android/settingslib/net/DataUsageController.java +++ b/packages/SettingsLib/src/com/android/settingslib/net/DataUsageController.java @@ -102,8 +102,7 @@ public class DataUsageController { } public DataUsageInfo getWifiDataUsageInfo() { - NetworkTemplate template = NetworkTemplate.buildTemplateWifi( - NetworkTemplate.WIFI_NETWORKID_ALL, null); + NetworkTemplate template = new NetworkTemplate.Builder(NetworkTemplate.MATCH_WIFI).build(); return getDataUsageInfo(template); } diff --git a/packages/SettingsLib/src/com/android/settingslib/net/DataUsageUtils.java b/packages/SettingsLib/src/com/android/settingslib/net/DataUsageUtils.java index 3f95a07cc7500..afd44d5bbc906 100644 --- a/packages/SettingsLib/src/com/android/settingslib/net/DataUsageUtils.java +++ b/packages/SettingsLib/src/com/android/settingslib/net/DataUsageUtils.java @@ -17,6 +17,7 @@ package com.android.settingslib.net; import android.content.Context; +import android.net.NetworkStats; import android.net.NetworkTemplate; import android.telephony.SubscriptionInfo; import android.telephony.SubscriptionManager; @@ -26,6 +27,7 @@ import android.util.Log; import com.android.internal.util.ArrayUtils; import java.util.List; +import java.util.Set; /** * Utils class for data usage @@ -73,10 +75,15 @@ public class DataUsageUtils { private static NetworkTemplate getMobileTemplateForSubId( TelephonyManager telephonyManager, int subId) { - // The null subscriberId means that no any mobile/carrier network will be matched. - // Using old API: buildTemplateMobileAll for the null subscriberId to avoid NPE. + // Create template that matches any mobile network when the subscriberId is null. String subscriberId = telephonyManager.getSubscriberId(subId); - return subscriberId != null ? NetworkTemplate.buildTemplateCarrierMetered(subscriberId) - : NetworkTemplate.buildTemplateMobileAll(subscriberId); + return subscriberId != null + ? new NetworkTemplate.Builder(NetworkTemplate.MATCH_CARRIER) + .setSubscriberIds(Set.of(subscriberId)) + .setMeteredness(NetworkStats.METERED_YES) + .build() + : new NetworkTemplate.Builder(NetworkTemplate.MATCH_MOBILE) + .setMeteredness(NetworkStats.METERED_YES) + .build(); } } diff --git a/packages/SettingsLib/tests/integ/src/com/android/settingslib/utils/NetworkPolicyEditorTest.java b/packages/SettingsLib/tests/integ/src/com/android/settingslib/utils/NetworkPolicyEditorTest.java index 7e389a19e4030..919f602862b41 100644 --- a/packages/SettingsLib/tests/integ/src/com/android/settingslib/utils/NetworkPolicyEditorTest.java +++ b/packages/SettingsLib/tests/integ/src/com/android/settingslib/utils/NetworkPolicyEditorTest.java @@ -20,6 +20,7 @@ import static junit.framework.Assert.assertEquals; import android.net.NetworkPolicy; import android.net.NetworkPolicyManager; +import android.net.NetworkStats; import android.net.NetworkTemplate; import androidx.test.InstrumentationRegistry; @@ -32,6 +33,8 @@ import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; +import java.util.Set; + @RunWith(AndroidJUnit4.class) @SmallTest public class NetworkPolicyEditorTest { @@ -44,7 +47,9 @@ public class NetworkPolicyEditorTest { @Before public void setUp() { - mNetworkTemplate = NetworkTemplate.buildTemplateCarrierMetered("123456789123456"); + mNetworkTemplate = new NetworkTemplate.Builder(NetworkTemplate.MATCH_CARRIER) + .setMeteredness(NetworkStats.METERED_YES) + .setSubscriberIds(Set.of("123456789123456")).build(); NetworkPolicyManager policyManager = NetworkPolicyManager.from(InstrumentationRegistry .getContext()); mNetworkPolicyEditor = new NetworkPolicyEditor(policyManager); diff --git a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/net/DataUsageControllerTest.java b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/net/DataUsageControllerTest.java index 6ef7b1681d7c0..f0456b3d51bac 100644 --- a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/net/DataUsageControllerTest.java +++ b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/net/DataUsageControllerTest.java @@ -42,6 +42,8 @@ import org.mockito.MockitoAnnotations; import org.robolectric.RobolectricTestRunner; import org.robolectric.shadows.ShadowSubscriptionManager; +import java.util.Set; + @RunWith(RobolectricTestRunner.class) public class DataUsageControllerTest { @@ -75,10 +77,13 @@ public class DataUsageControllerTest { ShadowSubscriptionManager.setDefaultDataSubscriptionId(mDefaultSubscriptionId); doReturn(SUB_ID).when(mTelephonyManager).getSubscriberId(); - mNetworkTemplate = NetworkTemplate.buildTemplateCarrierMetered(SUB_ID); - mNetworkTemplate2 = NetworkTemplate.buildTemplateCarrierMetered(SUB_ID_2); - mWifiNetworkTemplate = NetworkTemplate.buildTemplateWifi( - NetworkTemplate.WIFI_NETWORKID_ALL, null); + mNetworkTemplate = new NetworkTemplate.Builder(NetworkTemplate.MATCH_CARRIER) + .setMeteredness(android.net.NetworkStats.METERED_YES) + .setSubscriberIds(Set.of(SUB_ID)).build(); + mNetworkTemplate2 = new NetworkTemplate.Builder(NetworkTemplate.MATCH_CARRIER) + .setMeteredness(android.net.NetworkStats.METERED_YES) + .setSubscriberIds(Set.of(SUB_ID_2)).build(); + mWifiNetworkTemplate = new NetworkTemplate.Builder(NetworkTemplate.MATCH_WIFI).build(); } @Test diff --git a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/net/NetworkCycleDataForUidLoaderTest.java b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/net/NetworkCycleDataForUidLoaderTest.java index e8d5844867463..5b0f659e9c7ad 100644 --- a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/net/NetworkCycleDataForUidLoaderTest.java +++ b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/net/NetworkCycleDataForUidLoaderTest.java @@ -30,6 +30,7 @@ import android.app.usage.NetworkStatsManager; import android.content.Context; import android.net.NetworkPolicy; import android.net.NetworkPolicyManager; +import android.net.NetworkStats; import android.net.NetworkTemplate; import android.text.format.DateUtils; @@ -40,6 +41,8 @@ import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.robolectric.RobolectricTestRunner; +import java.util.Set; + @RunWith(RobolectricTestRunner.class) public class NetworkCycleDataForUidLoaderTest { private static final String SUB_ID = "Test Subscriber"; @@ -62,7 +65,9 @@ public class NetworkCycleDataForUidLoaderTest { when(mContext.getSystemService(Context.NETWORK_POLICY_SERVICE)) .thenReturn(mNetworkPolicyManager); when(mNetworkPolicyManager.getNetworkPolicies()).thenReturn(new NetworkPolicy[0]); - mNetworkTemplate = NetworkTemplate.buildTemplateCarrierMetered(SUB_ID); + mNetworkTemplate = new NetworkTemplate.Builder(NetworkTemplate.MATCH_CARRIER) + .setMeteredness(NetworkStats.METERED_YES) + .setSubscriberIds(Set.of(SUB_ID)).build(); } @Test