Fix crash when opening battery page
The settings crashes when opening battery usage detail page from
installed app page. Main reason is that it trying to open obsolete
page. This cl directs it to open AdvancedPowerUsageDetail instead.
Following cl will make InstalledAppDetail show calibrated percentage,
which is trakced in b/36816681
Bug: 36792973
Test: RunSettingsRoboTests
Change-Id: Ie63e64e543ed3b28974ffdda8b42c97e7749a0f7
(cherry picked from commit fac713318c
)
This commit is contained in:
@@ -88,6 +88,7 @@ import com.android.settings.applications.defaultapps.DefaultSmsPreferenceControl
|
||||
import com.android.settings.datausage.AppDataUsage;
|
||||
import com.android.settings.datausage.DataUsageList;
|
||||
import com.android.settings.datausage.DataUsageSummary;
|
||||
import com.android.settings.fuelgauge.AdvancedPowerUsageDetail;
|
||||
import com.android.settings.fuelgauge.BatteryEntry;
|
||||
import com.android.settings.fuelgauge.PowerUsageDetail;
|
||||
import com.android.settings.notification.AppNotificationSettings;
|
||||
@@ -182,15 +183,18 @@ public class InstalledAppDetails extends AppInfoBase
|
||||
private ChartData mChartData;
|
||||
private INetworkStatsSession mStatsSession;
|
||||
|
||||
private Preference mBatteryPreference;
|
||||
|
||||
private BatteryStatsHelper mBatteryHelper;
|
||||
private BatterySipper mSipper;
|
||||
@VisibleForTesting
|
||||
Preference mBatteryPreference;
|
||||
@VisibleForTesting
|
||||
BatterySipper mSipper;
|
||||
@VisibleForTesting
|
||||
BatteryStatsHelper mBatteryHelper;
|
||||
|
||||
protected ProcStatsData mStatsManager;
|
||||
protected ProcStatsPackageEntry mStats;
|
||||
|
||||
private AppStorageStats mLastResult;
|
||||
private String mBatteryPercent;
|
||||
|
||||
private boolean handleDisableable(Button button) {
|
||||
boolean disableable = false;
|
||||
@@ -683,7 +687,8 @@ public class InstalledAppDetails extends AppInfoBase
|
||||
BatteryStats.STATS_SINCE_CHARGED);
|
||||
final int percentOfMax = (int) ((mSipper.totalPowerMah)
|
||||
/ mBatteryHelper.getTotalPower() * dischargeAmount + .5f);
|
||||
mBatteryPreference.setSummary(getString(R.string.battery_summary, percentOfMax));
|
||||
mBatteryPercent = Utils.formatPercentage(percentOfMax);
|
||||
mBatteryPreference.setSummary(getString(R.string.battery_summary, mBatteryPercent));
|
||||
} else {
|
||||
mBatteryPreference.setEnabled(false);
|
||||
mBatteryPreference.setSummary(getString(R.string.no_battery_summary));
|
||||
@@ -954,9 +959,9 @@ public class InstalledAppDetails extends AppInfoBase
|
||||
} else if (preference == mDataPreference) {
|
||||
startAppInfoFragment(AppDataUsage.class, getString(R.string.app_data_usage));
|
||||
} else if (preference == mBatteryPreference) {
|
||||
BatteryEntry entry = new BatteryEntry(getActivity(), null, mUserManager, mSipper);
|
||||
PowerUsageDetail.startBatteryDetailPage((SettingsActivity) getActivity(), this,
|
||||
mBatteryHelper, BatteryStats.STATS_SINCE_CHARGED, entry, true, false);
|
||||
BatteryEntry entry = new BatteryEntry(getContext(), null, mUserManager, mSipper);
|
||||
AdvancedPowerUsageDetail.startBatteryDetailPage((SettingsActivity) getActivity(), this,
|
||||
mBatteryHelper, BatteryStats.STATS_SINCE_CHARGED, entry, mBatteryPercent);
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
|
Reference in New Issue
Block a user