Merge "Update datausage for DataUsagePreferenceController" into qt-dev
am: 2ace95f386
Change-Id: I09ff46fcb21181976bc96381e9cbc74bf13b6030
This commit is contained in:
@@ -178,9 +178,10 @@ public final class DataUsageUtils {
|
|||||||
* Returns the default network template based on the availability of mobile data, Wifi. Returns
|
* Returns the default network template based on the availability of mobile data, Wifi. Returns
|
||||||
* ethernet template if both mobile data and Wifi are not available.
|
* ethernet template if both mobile data and Wifi are not available.
|
||||||
*/
|
*/
|
||||||
static NetworkTemplate getDefaultTemplate(Context context, int defaultSubId) {
|
public static NetworkTemplate getDefaultTemplate(Context context, int defaultSubId) {
|
||||||
if (hasMobileData(context) && defaultSubId != SubscriptionManager.INVALID_SUBSCRIPTION_ID) {
|
if (hasMobileData(context) && defaultSubId != SubscriptionManager.INVALID_SUBSCRIPTION_ID) {
|
||||||
TelephonyManager telephonyManager = TelephonyManager.from(context);
|
TelephonyManager telephonyManager = TelephonyManager.from(context)
|
||||||
|
.createForSubscriptionId(defaultSubId);
|
||||||
NetworkTemplate mobileAll = NetworkTemplate.buildTemplateMobileAll(
|
NetworkTemplate mobileAll = NetworkTemplate.buildTemplateMobileAll(
|
||||||
telephonyManager.getSubscriberId(defaultSubId));
|
telephonyManager.getSubscriberId(defaultSubId));
|
||||||
return NetworkTemplate.normalize(mobileAll,
|
return NetworkTemplate.normalize(mobileAll,
|
||||||
|
@@ -21,9 +21,7 @@ import android.content.Intent;
|
|||||||
import android.net.NetworkTemplate;
|
import android.net.NetworkTemplate;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
import android.telephony.SubscriptionManager;
|
import android.telephony.SubscriptionManager;
|
||||||
import android.telephony.TelephonyManager;
|
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.text.format.Formatter;
|
|
||||||
|
|
||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
|
|
||||||
@@ -87,9 +85,10 @@ public class DataUsagePreferenceController extends TelephonyBasePreferenceContro
|
|||||||
mSubId = subId;
|
mSubId = subId;
|
||||||
|
|
||||||
if (mSubId != SubscriptionManager.INVALID_SUBSCRIPTION_ID) {
|
if (mSubId != SubscriptionManager.INVALID_SUBSCRIPTION_ID) {
|
||||||
mTemplate = getNetworkTemplate(mContext, subId);
|
mTemplate = DataUsageUtils.getDefaultTemplate(mContext, mSubId);
|
||||||
|
|
||||||
final DataUsageController controller = new DataUsageController(mContext);
|
final DataUsageController controller = new DataUsageController(mContext);
|
||||||
|
controller.setSubscriptionId(mSubId);
|
||||||
mDataUsageInfo = controller.getDataUsageInfo(mTemplate);
|
mDataUsageInfo = controller.getDataUsageInfo(mTemplate);
|
||||||
|
|
||||||
mIntent = new Intent(Settings.ACTION_MOBILE_DATA_USAGE);
|
mIntent = new Intent(Settings.ACTION_MOBILE_DATA_USAGE);
|
||||||
@@ -97,12 +96,4 @@ public class DataUsagePreferenceController extends TelephonyBasePreferenceContro
|
|||||||
mIntent.putExtra(Settings.EXTRA_SUB_ID, mSubId);
|
mIntent.putExtra(Settings.EXTRA_SUB_ID, mSubId);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private NetworkTemplate getNetworkTemplate(Context context, int subId) {
|
|
||||||
final TelephonyManager tm = TelephonyManager.from(context).createForSubscriptionId(subId);
|
|
||||||
NetworkTemplate mobileAll = NetworkTemplate.buildTemplateMobileAll(tm.getSubscriberId());
|
|
||||||
|
|
||||||
return NetworkTemplate.normalize(mobileAll, tm.getMergedSubscriberIds());
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -27,11 +27,13 @@ import static org.mockito.Mockito.doReturn;
|
|||||||
import static org.mockito.Mockito.never;
|
import static org.mockito.Mockito.never;
|
||||||
import static org.mockito.Mockito.spy;
|
import static org.mockito.Mockito.spy;
|
||||||
import static org.mockito.Mockito.verify;
|
import static org.mockito.Mockito.verify;
|
||||||
|
import static org.mockito.Mockito.when;
|
||||||
|
|
||||||
import android.app.usage.NetworkStatsManager;
|
import android.app.usage.NetworkStatsManager;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.net.NetworkPolicyManager;
|
import android.net.NetworkPolicyManager;
|
||||||
import android.telephony.SubscriptionManager;
|
import android.telephony.SubscriptionManager;
|
||||||
|
import android.telephony.TelephonyManager;
|
||||||
|
|
||||||
import androidx.fragment.app.FragmentActivity;
|
import androidx.fragment.app.FragmentActivity;
|
||||||
|
|
||||||
@@ -44,6 +46,7 @@ import com.android.settings.testutils.shadow.ShadowUtils;
|
|||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
|
import org.mockito.Answers;
|
||||||
import org.mockito.Mock;
|
import org.mockito.Mock;
|
||||||
import org.mockito.MockitoAnnotations;
|
import org.mockito.MockitoAnnotations;
|
||||||
import org.robolectric.Robolectric;
|
import org.robolectric.Robolectric;
|
||||||
@@ -68,6 +71,8 @@ public class DataUsageSummaryTest {
|
|||||||
private NetworkPolicyManager mNetworkPolicyManager;
|
private NetworkPolicyManager mNetworkPolicyManager;
|
||||||
@Mock
|
@Mock
|
||||||
private NetworkStatsManager mNetworkStatsManager;
|
private NetworkStatsManager mNetworkStatsManager;
|
||||||
|
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
|
||||||
|
private TelephonyManager mTelephonyManager;
|
||||||
private Context mContext;
|
private Context mContext;
|
||||||
private FragmentActivity mActivity;
|
private FragmentActivity mActivity;
|
||||||
private SummaryLoader.SummaryProvider mSummaryProvider;
|
private SummaryLoader.SummaryProvider mSummaryProvider;
|
||||||
@@ -84,7 +89,9 @@ public class DataUsageSummaryTest {
|
|||||||
ShadowUserManager.getShadow().setIsAdminUser(true);
|
ShadowUserManager.getShadow().setIsAdminUser(true);
|
||||||
shadowContext.setSystemService(Context.NETWORK_POLICY_SERVICE, mNetworkPolicyManager);
|
shadowContext.setSystemService(Context.NETWORK_POLICY_SERVICE, mNetworkPolicyManager);
|
||||||
|
|
||||||
mContext = RuntimeEnvironment.application;
|
mContext = spy(RuntimeEnvironment.application);
|
||||||
|
when(mContext.getSystemService(Context.TELEPHONY_SERVICE)).thenReturn(mTelephonyManager);
|
||||||
|
when(mTelephonyManager.createForSubscriptionId(anyInt())).thenReturn(mTelephonyManager);
|
||||||
mActivity = spy(Robolectric.buildActivity(FragmentActivity.class).get());
|
mActivity = spy(Robolectric.buildActivity(FragmentActivity.class).get());
|
||||||
doReturn(mNetworkStatsManager).when(mActivity).getSystemService(NetworkStatsManager.class);
|
doReturn(mNetworkStatsManager).when(mActivity).getSystemService(NetworkStatsManager.class);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user