diff --git a/res/values/strings.xml b/res/values/strings.xml
index 6944990ec77..ae67f35f2ff 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -4824,37 +4824,41 @@
Battery is in good shape
- Apps are behaving normally
+ Apps are running normally
Low battery capacity
Battery can\'t provide good battery life
- Turn on smart battery manager
+ Improve your phone\'s battery life
+
+ Improve your tablet\'s battery life
+
+ Improve your device\'s battery life
- Turn on to optimize battery usage
+ Turn on Battery Manager
- Turn on Low Battery Mode
+ Turn on Battery Saver
- Extend your battery life
+ Battery may run out earlier than usual
- Low Battery Mode is on
+ Battery Saver is on
- Some features are limited
+ Some features may be limited
- Phone used heavily
+ Phone used more than usual
- Tablet used heavily
+ Tablet used more than usual
- Device used heavily
-
- About %1$s used since last full charge
+ Device used more than usual
+
+ Battery may run out soon
- Your phone was used heavily and this consumed a lot of battery. Your battery is behaving normally.\n\n Your phone was used for about %1$s since last full charge.\n\n Total usage:
+ Your phone has been used more than usual. Your battery may run out sooner than expected.\n\nTop %1$d apps since last charge:
- Your tablet was used heavily and this consumed a lot of battery. Your battery is behaving normally.\n\n Your tablet was used for about %1$s since last full charge.\n\n Total usage:
+ Your tablet has been used more than usual. Your battery may run out sooner than expected.\n\nTop %1$d apps since last charge:
- Your device was used heavily and this consumed a lot of battery. Your battery is behaving normally.\n\n Your device was used for about %1$s since last full charge.\n\n Total usage:
+ Your device has been used more than usual. Your battery may run out sooner than expected.\n\nTop %1$d apps since last charge:
- Restrict %1$d app
@@ -4862,16 +4866,19 @@
- - %1$d recently restricted
- - %1$d apps recently restricted
+ - %1$s recently restricted
+ - %2$d apps recently restricted
- - %1$s has high battery usage
- - %2$d apps have high battery usage
+ - %1$s has high background battery usage
+ - %2$d apps have high background battery usage
- App changes are in progress
+
+ - This app can\'t run in the background
+ - These apps can\'t run in the background
+
@@ -4887,13 +4894,13 @@
Restrict
- Remove restriction for %1$s?
+ Remove restriction?
- This app will be able to use battery in the background. This may cause your battery to be used up faster.
+ This app will be able to use battery in the background. Your battery may run out sooner than expected.
Remove
- Not now
+ Cancel
Based on your usage, your battery usually lasts about %1$s when fully charged.\n\nIf you need to extend your battery life, turn on Battery Saver.
@@ -4901,11 +4908,13 @@
If you need to extend your battery life, turn on Battery Saver
- Smart battery manager
+ Battery Manager
- Auto-manage battery
+ Manage apps automatically
- Automatically adjust power usage by apps based on usage
+ Limit battery for infrequently used apps and apps that consume battery
+
+ Battery Manager prevents apps from consuming battery when you aren\’t using them
Restricted apps
@@ -4914,6 +4923,9 @@
- %1$d apps
+
+ Apps shown here aren\'t behaving properly and have been using battery in the background.\n\nThese apps are now blocked from using battery in the background. As a result, some app notifications may be delayed.
+
Restrict apps automatically
@@ -5167,13 +5179,10 @@
App optimization
- Reduced power mode
+ Battery Saver
- Schedule
-
-
- Turn on Reduced power mode automatically when battery is low
+ Turn on automatically
Turn on automatically at %1$s
diff --git a/res/xml/battery_saver_settings.xml b/res/xml/battery_saver_settings.xml
index 43971991b6f..29d268c58d4 100644
--- a/res/xml/battery_saver_settings.xml
+++ b/res/xml/battery_saver_settings.xml
@@ -24,7 +24,6 @@
appInfos) {
@@ -82,6 +85,8 @@ public class RestrictedAppDetails extends DashboardFragment {
super.onCreate(icicle);
final Context context = getContext();
+ mFooterPreferenceMixin.createFooterPreference().setTitle(
+ R.string.restricted_app_detail_footer);
mRestrictedAppListGroup = (PreferenceGroup) findPreference(KEY_PREF_RESTRICTED_APP_LIST);
mAppInfos = getArguments().getParcelableArrayList(EXTRA_APP_INFO_LIST);
mPackageManager = context.getPackageManager();
diff --git a/src/com/android/settings/fuelgauge/SmartBatterySettings.java b/src/com/android/settings/fuelgauge/SmartBatterySettings.java
index 34f930a6b9f..43ac960679c 100644
--- a/src/com/android/settings/fuelgauge/SmartBatterySettings.java
+++ b/src/com/android/settings/fuelgauge/SmartBatterySettings.java
@@ -45,7 +45,7 @@ public class SmartBatterySettings extends DashboardFragment {
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
- mFooterPreferenceMixin.createFooterPreference().setTitle(R.string.battery_footer_summary);
+ mFooterPreferenceMixin.createFooterPreference().setTitle(R.string.smart_battery_footer);
}
@Override
diff --git a/src/com/android/settings/fuelgauge/batterytip/BatteryTipDialogFragment.java b/src/com/android/settings/fuelgauge/batterytip/BatteryTipDialogFragment.java
index a7d542ca69e..cb508b34c0b 100644
--- a/src/com/android/settings/fuelgauge/batterytip/BatteryTipDialogFragment.java
+++ b/src/com/android/settings/fuelgauge/batterytip/BatteryTipDialogFragment.java
@@ -97,9 +97,7 @@ public class BatteryTipDialogFragment extends InstrumentedDialogFragment impleme
return new AlertDialog.Builder(context)
.setMessage(getString(R.string.battery_tip_dialog_message,
- StringUtil.formatElapsedTime(
- context, highUsageTip.getScreenTimeMs(),
- false /* withSeconds */)))
+ highUsageTip.getHighUsageAppList().size()))
.setView(view)
.setPositiveButton(android.R.string.ok, null)
.create();
@@ -140,7 +138,7 @@ public class BatteryTipDialogFragment extends InstrumentedDialogFragment impleme
unrestrictAppTip.getPackageName());
return new AlertDialog.Builder(context)
- .setTitle(getString(R.string.battery_tip_unrestrict_app_dialog_title, name))
+ .setTitle(getString(R.string.battery_tip_unrestrict_app_dialog_title))
.setMessage(R.string.battery_tip_unrestrict_app_dialog_message)
.setPositiveButton(R.string.battery_tip_unrestrict_app_dialog_ok, this)
.setNegativeButton(R.string.battery_tip_unrestrict_app_dialog_cancel, null)
diff --git a/src/com/android/settings/fuelgauge/batterytip/tips/HighUsageTip.java b/src/com/android/settings/fuelgauge/batterytip/tips/HighUsageTip.java
index 3ce753851e1..72d1fa4a5f2 100644
--- a/src/com/android/settings/fuelgauge/batterytip/tips/HighUsageTip.java
+++ b/src/com/android/settings/fuelgauge/batterytip/tips/HighUsageTip.java
@@ -66,8 +66,7 @@ public class HighUsageTip extends BatteryTip {
@Override
public CharSequence getSummary(Context context) {
- return context.getString(R.string.battery_tip_high_usage_summary,
- StringUtil.formatElapsedTime(context, mScreenTimeMs, false));
+ return context.getString(R.string.battery_tip_high_usage_summary);
}
@Override
diff --git a/src/com/android/settings/fuelgauge/batterytip/tips/RestrictAppTip.java b/src/com/android/settings/fuelgauge/batterytip/tips/RestrictAppTip.java
index 9c3a9bdc9e0..d4e950cf19b 100644
--- a/src/com/android/settings/fuelgauge/batterytip/tips/RestrictAppTip.java
+++ b/src/com/android/settings/fuelgauge/batterytip/tips/RestrictAppTip.java
@@ -17,6 +17,7 @@
package com.android.settings.fuelgauge.batterytip.tips;
import android.content.Context;
+import android.content.res.Resources;
import android.icu.text.ListFormatter;
import android.os.Parcel;
import android.text.TextUtils;
@@ -58,11 +59,14 @@ public class RestrictAppTip extends BatteryTip {
@Override
public CharSequence getTitle(Context context) {
final int num = mRestrictAppList.size();
- return context.getResources().getQuantityString(
- mState == StateType.HANDLED
- ? R.plurals.battery_tip_restrict_handled_title
- : R.plurals.battery_tip_restrict_title,
- num, num);
+ final CharSequence appLabel = num > 0 ? Utils.getApplicationLabel(context,
+ mRestrictAppList.get(0).packageName) : "";
+ final Resources resources = context.getResources();
+
+ return mState == StateType.HANDLED
+ ? resources.getQuantityString(R.plurals.battery_tip_restrict_handled_title, num,
+ appLabel, num)
+ : resources.getQuantityString(R.plurals.battery_tip_restrict_title, num, num);
}
@Override
@@ -70,10 +74,10 @@ public class RestrictAppTip extends BatteryTip {
final int num = mRestrictAppList.size();
final CharSequence appLabel = num > 0 ? Utils.getApplicationLabel(context,
mRestrictAppList.get(0).packageName) : "";
- return mState == StateType.HANDLED
- ? context.getString(R.string.battery_tip_restrict_handled_summary)
- : context.getResources().getQuantityString(R.plurals.battery_tip_restrict_summary,
- num, appLabel, num);
+ final int resId = mState == StateType.HANDLED
+ ? R.plurals.battery_tip_restrict_handled_summary
+ : R.plurals.battery_tip_restrict_summary;
+ return context.getResources().getQuantityString(resId, num, appLabel, num);
}
@Override
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/BatteryTipDialogFragmentTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/BatteryTipDialogFragmentTest.java
index 85e5b1e05a4..f09e5693fce 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/BatteryTipDialogFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/BatteryTipDialogFragmentTest.java
@@ -112,7 +112,7 @@ public class BatteryTipDialogFragmentTest {
ShadowAlertDialog shadowDialog = shadowOf(dialog);
assertThat(shadowDialog.getMessage())
- .isEqualTo(mContext.getString(R.string.battery_tip_dialog_message, "1h"));
+ .isEqualTo(mContext.getString(R.string.battery_tip_dialog_message, 1));
}
@Test
@@ -185,7 +185,7 @@ public class BatteryTipDialogFragmentTest {
final AlertDialog dialog = (AlertDialog) ShadowDialog.getLatestDialog();
ShadowAlertDialog shadowDialog = shadowOf(dialog);
- assertThat(shadowDialog.getTitle()).isEqualTo("Remove restriction for app?");
+ assertThat(shadowDialog.getTitle()).isEqualTo("Remove restriction?");
assertThat(shadowDialog.getMessage())
.isEqualTo(mContext.getString(R.string.battery_tip_unrestrict_app_dialog_message));
}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/BatteryTipPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/BatteryTipPreferenceControllerTest.java
index 0ac94c01082..612f569b589 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/BatteryTipPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/BatteryTipPreferenceControllerTest.java
@@ -150,6 +150,6 @@ public class BatteryTipPreferenceControllerTest {
final Preference preference = preferenceGroup.getPreference(0);
assertThat(preference.getTitle()).isEqualTo("Battery is in good shape");
- assertThat(preference.getSummary()).isEqualTo("Apps are behaving normally");
+ assertThat(preference.getSummary()).isEqualTo("Apps are running normally");
}
}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/EarlyWarningTipTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/EarlyWarningTipTest.java
index 1cac495d79e..3b1764fad83 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/EarlyWarningTipTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/EarlyWarningTipTest.java
@@ -67,8 +67,8 @@ public class EarlyWarningTipTest {
final EarlyWarningTip tip =
new EarlyWarningTip(BatteryTip.StateType.NEW, false /* powerModeOn */);
- assertThat(tip.getTitle(mContext)).isEqualTo("Turn on Low Battery Mode");
- assertThat(tip.getSummary(mContext)).isEqualTo("Extend your battery life");
+ assertThat(tip.getTitle(mContext)).isEqualTo("Turn on Battery Saver");
+ assertThat(tip.getSummary(mContext)).isEqualTo("Battery may run out earlier than usual");
assertThat(tip.getIconId()).isEqualTo(R.drawable.ic_battery_alert_24dp);
}
@@ -77,8 +77,8 @@ public class EarlyWarningTipTest {
final EarlyWarningTip tip =
new EarlyWarningTip(BatteryTip.StateType.HANDLED, false /* powerModeOn */);
- assertThat(tip.getTitle(mContext)).isEqualTo("Low Battery Mode is on");
- assertThat(tip.getSummary(mContext)).isEqualTo("Some features are limited");
+ assertThat(tip.getTitle(mContext)).isEqualTo("Battery Saver is on");
+ assertThat(tip.getSummary(mContext)).isEqualTo("Some features may be limited");
assertThat(tip.getIconId()).isEqualTo(R.drawable.ic_perm_device_information_green_24dp);
}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/HighUsageTipTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/HighUsageTipTest.java
index b038a912307..ca1cba38883 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/HighUsageTipTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/HighUsageTipTest.java
@@ -72,7 +72,7 @@ public class HighUsageTipTest {
final HighUsageTip parcelTip = new HighUsageTip(parcel);
- assertThat(parcelTip.getTitle(mContext)).isEqualTo("Phone used heavily");
+ assertThat(parcelTip.getTitle(mContext)).isEqualTo("Phone used more than usual");
assertThat(parcelTip.getType()).isEqualTo(BatteryTip.TipType.HIGH_DEVICE_USAGE);
assertThat(parcelTip.getState()).isEqualTo(BatteryTip.StateType.NEW);
assertThat(parcelTip.getScreenTimeMs()).isEqualTo(SCREEN_TIME);
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/RestrictAppTipTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/RestrictAppTipTest.java
index 9d32b2b4da7..7fe617e077a 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/RestrictAppTipTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/RestrictAppTipTest.java
@@ -32,8 +32,10 @@ import android.os.Parcel;
import android.util.Pair;
import com.android.internal.logging.nano.MetricsProto;
+import com.android.settings.R;
import com.android.settings.fuelgauge.batterytip.AppInfo;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
+import com.android.settings.testutils.shadow.ShadowUtils;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import org.junit.Before;
@@ -106,20 +108,37 @@ public class RestrictAppTipTest {
}
@Test
- public void getTitle_stateHandled_showHandledTitle() {
- assertThat(mHandledBatteryTip.getTitle(mContext)).isEqualTo("1 recently restricted");
+ public void getTitle_oneAppHandled_showHandledTitle() {
+ assertThat(mHandledBatteryTip.getTitle(mContext)).isEqualTo("app recently restricted");
+ }
+
+ @Test
+ public void getTitle_moreAppsHandled_showHandledTitle() {
+ mUsageAppList.add(new AppInfo.Builder().build());
+ mHandledBatteryTip = new RestrictAppTip(BatteryTip.StateType.HANDLED, mUsageAppList);
+ assertThat(mHandledBatteryTip.getTitle(mContext)).isEqualTo("2 apps recently restricted");
}
@Test
public void getSummary_stateNew_showRestrictSummary() {
assertThat(mNewBatteryTip.getSummary(mContext))
- .isEqualTo("app has high battery usage");
+ .isEqualTo("app has high background battery usage");
}
@Test
- public void getSummary_stateHandled_showHandledSummary() {
+ public void getSummary_oneAppHandled_showHandledSummary() {
+ assertThat(mHandledBatteryTip.getSummary(mContext).toString())
+ .isEqualTo(mContext.getResources().getQuantityString(
+ R.plurals.battery_tip_restrict_handled_summary, 1));
+ }
+
+ @Test
+ public void getSummary_moreAppsHandled_showHandledSummary() {
+ mUsageAppList.add(new AppInfo.Builder().build());
+ mHandledBatteryTip = new RestrictAppTip(BatteryTip.StateType.HANDLED, mUsageAppList);
assertThat(mHandledBatteryTip.getSummary(mContext))
- .isEqualTo("App changes are in progress");
+ .isEqualTo(mContext.getResources().getQuantityString(
+ R.plurals.battery_tip_restrict_handled_summary, 2));
}
@Test