Set correct network type when launching wifi usage data.
- when launching wifi data usage, need to explicitly set the network type to wifi. Otherwise, the data usage list will try to show data for the default mobile data usage. Change-Id: I819538d2c53664635bc1c2a721d6d7f6799c6123 Fixes: 123205630 Test: make RunSettingsRoboTests
This commit is contained in:
@@ -21,6 +21,7 @@ import android.app.settings.SettingsEnums;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.graphics.Typeface;
|
||||
import android.net.ConnectivityManager;
|
||||
import android.net.NetworkTemplate;
|
||||
import android.os.Bundle;
|
||||
import android.text.Spannable;
|
||||
@@ -206,10 +207,12 @@ public class DataUsageSummaryPreference extends Preference {
|
||||
}
|
||||
}
|
||||
|
||||
private static void launchWifiDataUsage(Context context) {
|
||||
@VisibleForTesting
|
||||
static void launchWifiDataUsage(Context context) {
|
||||
final Bundle args = new Bundle(1);
|
||||
args.putParcelable(DataUsageList.EXTRA_NETWORK_TEMPLATE,
|
||||
NetworkTemplate.buildTemplateWifiWildcard());
|
||||
args.putInt(DataUsageList.EXTRA_NETWORK_TYPE, ConnectivityManager.TYPE_WIFI);
|
||||
final SubSettingLauncher launcher = new SubSettingLauncher(context)
|
||||
.setArguments(args)
|
||||
.setDestination(DataUsageList.class.getName())
|
||||
|
@@ -26,6 +26,7 @@ import android.app.Activity;
|
||||
import android.content.ComponentName;
|
||||
import android.content.Intent;
|
||||
import android.graphics.Typeface;
|
||||
import android.net.ConnectivityManager;
|
||||
import android.net.NetworkTemplate;
|
||||
import android.os.Bundle;
|
||||
import android.telephony.SubscriptionManager;
|
||||
@@ -531,6 +532,18 @@ public class DataUsageSummaryPreferenceTest {
|
||||
assertThat(mLaunchButton.isEnabled()).isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void launchWifiDataUsage_shouldSetWifiNetworkTypeInIntentExtra() {
|
||||
mSummaryPreference.launchWifiDataUsage(mActivity);
|
||||
|
||||
final Intent launchIntent = Shadows.shadowOf(mActivity).getNextStartedActivity();
|
||||
final Bundle args =
|
||||
launchIntent.getBundleExtra(SettingsActivity.EXTRA_SHOW_FRAGMENT_ARGUMENTS);
|
||||
|
||||
assertThat(args.getInt(DataUsageList.EXTRA_NETWORK_TYPE))
|
||||
.isEqualTo(ConnectivityManager.TYPE_WIFI);
|
||||
}
|
||||
|
||||
private void bindViewHolder() {
|
||||
mSummaryPreference.onBindViewHolder(mHolder);
|
||||
mUsageTitle = (TextView) mHolder.findViewById(R.id.usage_title);
|
||||
|
Reference in New Issue
Block a user