Data plan usage summary activity.
Change-Id: Ibb0889563d432591fd00ac00d03633b1894ad124
Note: These changes are required for Data balance UI.
Bug: 62349208
Test: make RunSettingsRoboTests -j40
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index fab5d0c..4bf5002 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -2413,6 +2413,24 @@
android:value="com.android.settings.CryptKeeperSettings" />
</activity>
+ <activity android:name="Settings$DataPlanUsageSummaryActivity"
+ android:label="@string/data_usage_summary_title"
+ android:icon="@drawable/ic_settings_data_usage"
+ android:taskAffinity="">
+ <intent-filter>
+ <action android:name="android.intent.action.MAIN" />
+ <category android:name="android.intent.category.DEFAULT" />
+ <category android:name="com.android.settings.SHORTCUT" />
+ </intent-filter>
+ <intent-filter android:priority="10">
+ <action android:name="com.android.settings.action.SETTINGS" />
+ </intent-filter>
+ <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"
+ android:value="com.android.settings.datausage.DataPlanUsageSummary" />
+ </activity>
+
<activity android:name="Settings$DataUsageSummaryActivity"
android:label="@string/data_usage_summary_title"
android:icon="@drawable/ic_settings_data_usage"
diff --git a/src/com/android/settings/Settings.java b/src/com/android/settings/Settings.java
index 01dc44b..be93d87 100644
--- a/src/com/android/settings/Settings.java
+++ b/src/com/android/settings/Settings.java
@@ -89,6 +89,7 @@
public static class AccountSyncSettingsInAddAccountActivity extends SettingsActivity { /* empty */ }
public static class CryptKeeperSettingsActivity extends SettingsActivity { /* empty */ }
public static class DeviceAdminSettingsActivity extends SettingsActivity { /* empty */ }
+ public static class DataPlanUsageSummaryActivity extends SettingsActivity { /* empty */ }
public static class DataUsageSummaryActivity extends SettingsActivity { /* empty */ }
public static class MobileDataUsageListActivity extends SettingsActivity { /* empty */ }
public static class ConfigureWifiSettingsActivity extends SettingsActivity { /* empty */ }
diff --git a/src/com/android/settings/SettingsActivity.java b/src/com/android/settings/SettingsActivity.java
index 225c5ea..f120b7f 100644
--- a/src/com/android/settings/SettingsActivity.java
+++ b/src/com/android/settings/SettingsActivity.java
@@ -33,7 +33,6 @@
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.drawable.Drawable;
-import android.nfc.NfcAdapter;
import android.os.AsyncTask;
import android.os.Bundle;
import android.os.UserHandle;
@@ -50,7 +49,6 @@
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.Toolbar;
-
import com.android.internal.util.ArrayUtils;
import com.android.settings.Settings.WifiSettingsActivity;
import com.android.settings.backup.BackupSettingsActivity;
@@ -67,7 +65,6 @@
import com.android.settings.widget.SwitchBar;
import com.android.settingslib.drawer.DashboardCategory;
import com.android.settingslib.drawer.SettingsDrawerActivity;
-
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
@@ -779,10 +776,33 @@
pm.hasSystemFeature(PackageManager.FEATURE_BLUETOOTH), isAdmin)
|| somethingChanged;
- somethingChanged = setTileEnabled(new ComponentName(packageName,
- Settings.DataUsageSummaryActivity.class.getName()),
- Utils.isBandwidthControlEnabled(), isAdmin)
- || somethingChanged;
+ boolean isDataPlanFeatureEnabled = FeatureFactory.getFactory(this)
+ .getDataPlanFeatureProvider()
+ .isEnabled();
+
+ // When the data plan feature flag is turned on we disable DataUsageSummaryActivity
+ // and enable DataPlanUsageSummaryActivity. When the feature flag is turned off we do the
+ // reverse.
+
+ // Disable DataUsageSummaryActivity if the data plan feature flag is turned on otherwise
+ // disable DataPlanUsageSummaryActivity.
+ somethingChanged = setTileEnabled(
+ new ComponentName(packageName,
+ isDataPlanFeatureEnabled
+ ? Settings.DataUsageSummaryActivity.class.getName()
+ : Settings.DataPlanUsageSummaryActivity.class.getName()),
+ false /* enabled */,
+ isAdmin) || somethingChanged;
+
+ // Enable DataUsageSummaryActivity if the data plan feature flag is turned on otherwise
+ // enable DataPlanUsageSummaryActivity.
+ somethingChanged = setTileEnabled(
+ new ComponentName(packageName,
+ isDataPlanFeatureEnabled
+ ? Settings.DataPlanUsageSummaryActivity.class.getName()
+ : Settings.DataUsageSummaryActivity.class.getName()),
+ Utils.isBandwidthControlEnabled() /* enabled */,
+ isAdmin) || somethingChanged;
somethingChanged = setTileEnabled(new ComponentName(packageName,
Settings.SimSettingsActivity.class.getName()),
diff --git a/src/com/android/settings/core/gateway/SettingsGateway.java b/src/com/android/settings/core/gateway/SettingsGateway.java
index 9e664e5..380c070 100644
--- a/src/com/android/settings/core/gateway/SettingsGateway.java
+++ b/src/com/android/settings/core/gateway/SettingsGateway.java
@@ -61,6 +61,7 @@
import com.android.settings.bluetooth.BluetoothSettings;
import com.android.settings.connecteddevice.ConnectedDeviceDashboardFragment;
import com.android.settings.dashboard.SupportFragment;
+import com.android.settings.datausage.DataPlanUsageSummary;
import com.android.settings.datausage.DataUsageList;
import com.android.settings.datausage.DataUsageSummary;
import com.android.settings.deletionhelper.AutomaticStorageManagerSettings;
@@ -186,6 +187,7 @@
PickupGestureSettings.class.getName(),
DoubleTwistGestureSettings.class.getName(),
CryptKeeperSettings.class.getName(),
+ DataPlanUsageSummary.class.getName(),
DataUsageSummary.class.getName(),
DreamSettings.class.getName(),
UserSettings.class.getName(),
@@ -269,6 +271,7 @@
SupportDashboardActivity.class.getName(),
// Home page > Network & Internet
Settings.WifiSettingsActivity.class.getName(),
+ Settings.DataPlanUsageSummaryActivity.class.getName(),
Settings.DataUsageSummaryActivity.class.getName(),
Settings.SimSettingsActivity.class.getName(),
// Home page > Connected devices