From 70196d84a640ed4781e3d79a4dfe2015126238ff Mon Sep 17 00:00:00 2001 From: Fan Zhang Date: Tue, 9 Aug 2016 14:21:15 -0700 Subject: [PATCH] Allow configurable data warning for BillingCyclerPreference Bug: 30898071 Change-Id: Ifb822828c5e7152e4ca217593f7746bfbb29ab2a --- packages/SettingsLib/res/values/config.xml | 3 +++ .../com/android/settingslib/net/DataUsageController.java | 16 +++++++++++++--- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/packages/SettingsLib/res/values/config.xml b/packages/SettingsLib/res/values/config.xml index 299a5b74689c..d9473fa0b8b3 100755 --- a/packages/SettingsLib/res/values/config.xml +++ b/packages/SettingsLib/res/values/config.xml @@ -19,4 +19,7 @@ false + + + 2048 diff --git a/packages/SettingsLib/src/com/android/settingslib/net/DataUsageController.java b/packages/SettingsLib/src/com/android/settingslib/net/DataUsageController.java index e53dd2f42c75..994ea88a80dd 100644 --- a/packages/SettingsLib/src/com/android/settingslib/net/DataUsageController.java +++ b/packages/SettingsLib/src/com/android/settingslib/net/DataUsageController.java @@ -32,6 +32,8 @@ import android.text.format.DateUtils; import android.text.format.Time; import android.util.Log; +import com.android.settingslib.R; + import java.util.Date; import java.util.Locale; @@ -41,12 +43,12 @@ import static android.net.NetworkStatsHistory.FIELD_TX_BYTES; import static android.telephony.TelephonyManager.SIM_STATE_READY; import static android.text.format.DateUtils.FORMAT_ABBREV_MONTH; import static android.text.format.DateUtils.FORMAT_SHOW_DATE; +import static android.net.TrafficStats.MB_IN_BYTES; public class DataUsageController { + private static final String TAG = "DataUsageController"; private static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG); - - public static final long DEFAULT_WARNING_LEVEL = 2L * 1024 * 1024 * 1024; private static final int FIELDS = FIELD_RX_BYTES | FIELD_TX_BYTES; private static final StringBuilder PERIOD_BUILDER = new StringBuilder(50); private static final java.util.Formatter PERIOD_FORMATTER = new java.util.Formatter( @@ -75,6 +77,14 @@ public class DataUsageController { mNetworkController = networkController; } + /** + * Returns the default warning level in bytes. + */ + public long getDefaultWarningLevel() { + return MB_IN_BYTES + * mContext.getResources().getInteger(R.integer.default_data_warning_level_mb); + } + private INetworkStatsSession getSession() { if (mSession == null) { try { @@ -169,7 +179,7 @@ public class DataUsageController { usage.limitLevel = policy.limitBytes > 0 ? policy.limitBytes : 0; usage.warningLevel = policy.warningBytes > 0 ? policy.warningBytes : 0; } else { - usage.warningLevel = DEFAULT_WARNING_LEVEL; + usage.warningLevel = getDefaultWarningLevel(); } if (usage != null && mNetworkController != null) { usage.carrier = mNetworkController.getMobileDataNetworkName(); -- 2.11.0