Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 72d99dd3 authored by Salvador Martinez's avatar Salvador Martinez Committed by android-build-merger
Browse files

Merge "Update battery stuff to use SettingsLib Estimate class" into qt-dev

am: 022af8ca

Change-Id: Ie0e16d985ef878e9989ad4037947ff57e34749fc
parents cd576bfa 022af8ca
Loading
Loading
Loading
Loading
+9 −7
Original line number Diff line number Diff line
@@ -34,6 +34,8 @@ import com.android.settings.Utils;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.widget.UsageView;
import com.android.settingslib.R;
import com.android.settingslib.fuelgauge.Estimate;
import com.android.settingslib.fuelgauge.EstimateKt;
import com.android.settingslib.utils.PowerUtil;
import com.android.settingslib.utils.StringUtil;

@@ -44,7 +46,7 @@ public class BatteryInfo {
    public int batteryLevel;
    public boolean discharging = true;
    public long remainingTimeUs = 0;
    public long averageTimeToDischarge = Estimate.AVERAGE_TIME_TO_DISCHARGE_UNKNOWN;
    public long averageTimeToDischarge = EstimateKt.AVERAGE_TIME_TO_DISCHARGE_UNKNOWN;
    public String batteryPercentString;
    public String statusLabel;
    public String suggestionLabel;
@@ -202,7 +204,7 @@ public class BatteryInfo {
        final Estimate estimate = new Estimate(
                PowerUtil.convertUsToMs(prediction),
                false, /* isBasedOnUsage */
                Estimate.AVERAGE_TIME_TO_DISCHARGE_UNKNOWN);
                EstimateKt.AVERAGE_TIME_TO_DISCHARGE_UNKNOWN);
        BatteryUtils.logRuntime(LOG_TAG, "time for regular BatteryInfo", startTime);
        return BatteryInfo.getBatteryInfo(context, batteryBroadcast, stats,
                estimate, elapsedRealtimeUs, shortString);
@@ -214,7 +216,7 @@ public class BatteryInfo {
        Estimate estimate = new Estimate(
                PowerUtil.convertUsToMs(stats.computeBatteryTimeRemaining(elapsedRealtimeUs)),
                false,
                Estimate.AVERAGE_TIME_TO_DISCHARGE_UNKNOWN);
                EstimateKt.AVERAGE_TIME_TO_DISCHARGE_UNKNOWN);
        return getBatteryInfo(context, batteryBroadcast, stats, estimate, elapsedRealtimeUs,
                shortString);
    }
@@ -228,7 +230,7 @@ public class BatteryInfo {
        info.batteryLevel = Utils.getBatteryLevel(batteryBroadcast);
        info.batteryPercentString = Utils.formatPercentage(info.batteryLevel);
        info.mCharging = batteryBroadcast.getIntExtra(BatteryManager.EXTRA_PLUGGED, 0) != 0;
        info.averageTimeToDischarge = estimate.averageDischargeTime;
        info.averageTimeToDischarge = estimate.getAverageDischargeTime();
        final Resources resources = context.getResources();

        info.statusLabel = Utils.getBatteryStatus(resources, batteryBroadcast);
@@ -269,20 +271,20 @@ public class BatteryInfo {

    private static void updateBatteryInfoDischarging(Context context, boolean shortString,
            Estimate estimate, BatteryInfo info) {
        final long drainTimeUs = PowerUtil.convertMsToUs(estimate.estimateMillis);
        final long drainTimeUs = PowerUtil.convertMsToUs(estimate.getEstimateMillis());
        if (drainTimeUs > 0) {
            info.remainingTimeUs = drainTimeUs;
            info.remainingLabel = PowerUtil.getBatteryRemainingStringFormatted(
                    context,
                    PowerUtil.convertUsToMs(drainTimeUs),
                    null /* percentageString */,
                    estimate.isBasedOnUsage && !shortString
                    estimate.isBasedOnUsage() && !shortString
            );
            info.chargeLabel = PowerUtil.getBatteryRemainingStringFormatted(
                    context,
                    PowerUtil.convertUsToMs(drainTimeUs),
                    info.batteryPercentString,
                    estimate.isBasedOnUsage && !shortString
                    estimate.isBasedOnUsage() && !shortString
            );
            info.suggestionLabel = PowerUtil.getBatteryTipStringFormatted(
                    context, PowerUtil.convertUsToMs(drainTimeUs));
+3 −1
Original line number Diff line number Diff line
@@ -47,6 +47,8 @@ import com.android.settings.fuelgauge.batterytip.AnomalyInfo;
import com.android.settings.fuelgauge.batterytip.BatteryDatabaseManager;
import com.android.settings.fuelgauge.batterytip.StatsManagerConfig;
import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.fuelgauge.Estimate;
import com.android.settingslib.fuelgauge.EstimateKt;
import com.android.settingslib.fuelgauge.PowerWhitelistBackend;
import com.android.settingslib.utils.PowerUtil;
import com.android.settingslib.utils.ThreadUtils;
@@ -460,7 +462,7 @@ public class BatteryUtils {
            estimate = new Estimate(
                    PowerUtil.convertUsToMs(stats.computeBatteryTimeRemaining(elapsedRealtimeUs)),
                    false /* isBasedOnUsage */,
                    Estimate.AVERAGE_TIME_TO_DISCHARGE_UNKNOWN);
                    EstimateKt.AVERAGE_TIME_TO_DISCHARGE_UNKNOWN);
        }

        BatteryUtils.logRuntime(tag, "BatteryInfoLoader post query", startTime);
+3 −1
Original line number Diff line number Diff line
@@ -23,6 +23,8 @@ import android.os.SystemClock;

import com.android.internal.os.BatteryStatsHelper;
import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.fuelgauge.Estimate;
import com.android.settingslib.fuelgauge.EstimateKt;
import com.android.settingslib.utils.AsyncLoaderCompat;
import com.android.settingslib.utils.PowerUtil;

@@ -60,7 +62,7 @@ public class DebugEstimatesLoader extends AsyncLoaderCompat<List<BatteryInfo>> {

        Estimate estimate = powerUsageFeatureProvider.getEnhancedBatteryPrediction(context);
        if (estimate == null) {
            estimate = new Estimate(0, false, Estimate.AVERAGE_TIME_TO_DISCHARGE_UNKNOWN);
            estimate = new Estimate(0, false, EstimateKt.AVERAGE_TIME_TO_DISCHARGE_UNKNOWN);
        }
        BatteryInfo newInfo = BatteryInfo.getBatteryInfo(getContext(), batteryBroadcast, stats,
                estimate, elapsedRealtimeUs, false);
+0 −18
Original line number Diff line number Diff line
package com.android.settings.fuelgauge;

public class Estimate {

    // Value to indicate averageTimeToDischarge could not be obtained
    public static final int AVERAGE_TIME_TO_DISCHARGE_UNKNOWN = -1;

    public final long estimateMillis;
    public final boolean isBasedOnUsage;
    public final long averageDischargeTime;

    public Estimate(long estimateMillis, boolean isBasedOnUsage,
            long averageDischargeTime) {
        this.estimateMillis = estimateMillis;
        this.isBasedOnUsage = isBasedOnUsage;
        this.averageDischargeTime = averageDischargeTime;
    }
}
+1 −0
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@ import android.content.Intent;
import android.util.SparseIntArray;

import com.android.internal.os.BatterySipper;
import com.android.settingslib.fuelgauge.Estimate;

/**
 * Feature Provider used in power usage
Loading