Merge "Updates to data usage prefs" into qt-dev

This commit is contained in:
Andrew Sapperstein
2019-04-10 16:49:49 +00:00
committed by Android (Google) Code Review
5 changed files with 81 additions and 4 deletions

View File

@@ -2239,9 +2239,6 @@
<intent-filter> <intent-filter>
<action android:name="com.android.settings.action.SETTINGS" /> <action android:name="com.android.settings.action.SETTINGS" />
</intent-filter> </intent-filter>
<meta-data android:name="com.android.settings.order" android:value="-6"/>
<meta-data android:name="com.android.settings.category"
android:value="com.android.settings.category.ia.wireless" />
<meta-data android:name="com.android.settings.FRAGMENT_CLASS" <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
android:value="com.android.settings.datausage.DataUsageSummary" /> android:value="com.android.settings.datausage.DataUsageSummary" />
</activity> </activity>

View File

@@ -68,6 +68,11 @@
android:title="@string/mobile_data_usage_title" android:title="@string/mobile_data_usage_title"
settings:controller="com.android.settings.network.telephony.DataUsagePreferenceController"/> settings:controller="com.android.settings.network.telephony.DataUsagePreferenceController"/>
<com.android.settings.datausage.BillingCyclePreference
android:key="billing_preference"
android:title="@string/billing_cycle"
settings:controller="com.android.settings.datausage.BillingCyclePreferenceController" />
<SwitchPreference <SwitchPreference
android:key="enhanced_4g_lte" android:key="enhanced_4g_lte"
android:title="@string/enhanced_4g_lte_mode_title" android:title="@string/enhanced_4g_lte_mode_title"

View File

@@ -19,7 +19,7 @@
xmlns:settings="http://schemas.android.com/apk/res-auto" xmlns:settings="http://schemas.android.com/apk/res-auto"
android:key="network_and_internet_screen" android:key="network_and_internet_screen"
android:title="@string/network_dashboard_title" android:title="@string/network_dashboard_title"
settings:initialExpandedChildrenCount="6"> settings:initialExpandedChildrenCount="5">
<PreferenceCategory <PreferenceCategory
android:key="multi_network_header" android:key="multi_network_header"

View File

@@ -0,0 +1,73 @@
/*
* Copyright (C) 2019 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.settings.datausage;
import android.content.Context;
import android.net.INetworkStatsService;
import android.net.NetworkPolicyManager;
import android.net.NetworkTemplate;
import android.os.INetworkManagementService;
import android.os.ServiceManager;
import android.os.UserManager;
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager;
import com.android.settings.core.BasePreferenceController;
import com.android.settingslib.NetworkPolicyEditor;
import androidx.preference.PreferenceScreen;
public class BillingCyclePreferenceController extends BasePreferenceController {
private int mSubscriptionId;
public BillingCyclePreferenceController(Context context, String preferenceKey) {
super(context, preferenceKey);
}
public void init(int subscriptionId) {
mSubscriptionId = subscriptionId;
}
@Override
public void displayPreference(PreferenceScreen screen) {
super.displayPreference(screen);
BillingCyclePreference preference = screen.findPreference(getPreferenceKey());
TemplatePreference.NetworkServices services = new TemplatePreference.NetworkServices();
services.mNetworkService = INetworkManagementService.Stub.asInterface(
ServiceManager.getService(Context.NETWORKMANAGEMENT_SERVICE));
services.mStatsService = INetworkStatsService.Stub.asInterface(
ServiceManager.getService(Context.NETWORK_STATS_SERVICE));
services.mPolicyManager = mContext.getSystemService(NetworkPolicyManager.class);
services.mPolicyEditor = new NetworkPolicyEditor(services.mPolicyManager);
services.mTelephonyManager = mContext.getSystemService(TelephonyManager.class);
services.mSubscriptionManager = mContext.getSystemService(SubscriptionManager.class);
services.mUserManager = mContext.getSystemService(UserManager.class);
NetworkTemplate mobileAll = NetworkTemplate.buildTemplateMobileAll(
services.mTelephonyManager.getSubscriberId(mSubscriptionId));
NetworkTemplate template = NetworkTemplate.normalize(mobileAll,
services.mTelephonyManager.getMergedSubscriberIds());
preference.setTemplate(template, mSubscriptionId, services);
}
@Override
public int getAvailabilityStatus() {
return AVAILABLE;
}
}

View File

@@ -36,6 +36,7 @@ import com.android.internal.telephony.TelephonyIntents;
import com.android.settings.R; import com.android.settings.R;
import com.android.settings.core.FeatureFlags; import com.android.settings.core.FeatureFlags;
import com.android.settings.dashboard.RestrictedDashboardFragment; import com.android.settings.dashboard.RestrictedDashboardFragment;
import com.android.settings.datausage.BillingCyclePreferenceController;
import com.android.settings.datausage.DataUsageSummaryPreferenceController; import com.android.settings.datausage.DataUsageSummaryPreferenceController;
import com.android.settings.development.featureflags.FeatureFlagPersistent; import com.android.settings.development.featureflags.FeatureFlagPersistent;
import com.android.settings.network.telephony.cdma.CdmaSubscriptionPreferenceController; import com.android.settings.network.telephony.cdma.CdmaSubscriptionPreferenceController;
@@ -134,6 +135,7 @@ public class MobileNetworkSettings extends RestrictedDashboardFragment {
use(SmsDefaultSubscriptionController.class).init(getLifecycle()); use(SmsDefaultSubscriptionController.class).init(getLifecycle());
use(MobileNetworkSwitchController.class).init(getLifecycle(), mSubId); use(MobileNetworkSwitchController.class).init(getLifecycle(), mSubId);
use(CarrierSettingsVersionPreferenceController.class).init(mSubId); use(CarrierSettingsVersionPreferenceController.class).init(mSubId);
use(BillingCyclePreferenceController.class).init(mSubId);
} }
use(MobileDataPreferenceController.class).init(getFragmentManager(), mSubId); use(MobileDataPreferenceController.class).init(getFragmentManager(), mSubId);
use(RoamingPreferenceController.class).init(getFragmentManager(), mSubId); use(RoamingPreferenceController.class).init(getFragmentManager(), mSubId);