diff --git a/src/com/android/settings/deviceinfo/batteryinfo/BatteryDesignCapacityPreferenceController.java b/src/com/android/settings/deviceinfo/batteryinfo/BatteryDesignCapacityPreferenceController.java index 78f415a8c14..e759b0c08bd 100644 --- a/src/com/android/settings/deviceinfo/batteryinfo/BatteryDesignCapacityPreferenceController.java +++ b/src/com/android/settings/deviceinfo/batteryinfo/BatteryDesignCapacityPreferenceController.java @@ -20,6 +20,8 @@ import android.content.Context; import android.content.Intent; import android.os.BatteryManager; +import com.android.internal.os.PowerProfile; + import com.android.settings.R; import com.android.settings.core.BasePreferenceController; import com.android.settingslib.fuelgauge.BatteryUtils; @@ -42,8 +44,12 @@ public class BatteryDesignCapacityPreferenceController extends BasePreferenceCon @Override public CharSequence getSummary() { Intent batteryIntent = BatteryUtils.getBatteryIntent(mContext); - final int designCapacityUah = + int designCapacityUah = batteryIntent.getIntExtra(BatteryManager.EXTRA_DESIGN_CAPACITY, -1); + if (designCapacityUah <= 0) { + final PowerProfile profile = new PowerProfile(mContext); + designCapacityUah = (int) profile.getBatteryCapacity() * 1000; + } if (designCapacityUah > 0) { int designCapacity = designCapacityUah / 1_000; diff --git a/src/com/android/settings/deviceinfo/batteryinfo/BatteryMaximumCapacityPreferenceController.java b/src/com/android/settings/deviceinfo/batteryinfo/BatteryMaximumCapacityPreferenceController.java index e36f3e8a59f..7440a5af46c 100644 --- a/src/com/android/settings/deviceinfo/batteryinfo/BatteryMaximumCapacityPreferenceController.java +++ b/src/com/android/settings/deviceinfo/batteryinfo/BatteryMaximumCapacityPreferenceController.java @@ -20,6 +20,8 @@ import android.content.Context; import android.content.Intent; import android.os.BatteryManager; +import com.android.internal.os.PowerProfile; + import com.android.settings.R; import com.android.settings.core.BasePreferenceController; import com.android.settingslib.fuelgauge.BatteryUtils; @@ -44,8 +46,12 @@ public class BatteryMaximumCapacityPreferenceController extends BasePreferenceCo Intent batteryIntent = BatteryUtils.getBatteryIntent(mContext); final int maxCapacityUah = batteryIntent.getIntExtra(BatteryManager.EXTRA_MAXIMUM_CAPACITY, -1); - final int designCapacityUah = + int designCapacityUah = batteryIntent.getIntExtra(BatteryManager.EXTRA_DESIGN_CAPACITY, -1); + if (designCapacityUah <= 0) { + final PowerProfile profile = new PowerProfile(mContext); + designCapacityUah = (int) profile.getBatteryCapacity() * 1000; + } if (maxCapacityUah > 0 && designCapacityUah > 0) { int maxCapacity = maxCapacityUah / 1_000;