Enable dumpsys logging for BatteryController

After having been fully removed from Dependency.java, BatteryController
lost its dumpsys entries. This CL adds it manually, and removes the
entry from Dependency.java.

Test: atest SystemUITests
Test: adb shell -n dumpsys activity service com.android.systemui/.SystemUIService | grep "BatteryController:"
Fixes: 245739044
Change-Id: Ib1d6559cb1980f73bd98ab233ca012b4d12ac9a5
This commit is contained in:
Evan Laird
2022-09-08 16:32:35 -04:00
parent d112853729
commit 70fd75a4f1
6 changed files with 23 additions and 8 deletions

View File

@@ -103,7 +103,6 @@ import com.android.systemui.statusbar.phone.StatusBarIconController;
import com.android.systemui.statusbar.phone.SystemUIDialogManager; import com.android.systemui.statusbar.phone.SystemUIDialogManager;
import com.android.systemui.statusbar.policy.AccessibilityController; import com.android.systemui.statusbar.policy.AccessibilityController;
import com.android.systemui.statusbar.policy.AccessibilityManagerWrapper; import com.android.systemui.statusbar.policy.AccessibilityManagerWrapper;
import com.android.systemui.statusbar.policy.BatteryController;
import com.android.systemui.statusbar.policy.BluetoothController; import com.android.systemui.statusbar.policy.BluetoothController;
import com.android.systemui.statusbar.policy.CastController; import com.android.systemui.statusbar.policy.CastController;
import com.android.systemui.statusbar.policy.ConfigurationController; import com.android.systemui.statusbar.policy.ConfigurationController;
@@ -253,7 +252,6 @@ public class Dependency {
@Inject Lazy<UserInfoController> mUserInfoController; @Inject Lazy<UserInfoController> mUserInfoController;
@Inject Lazy<KeyguardStateController> mKeyguardMonitor; @Inject Lazy<KeyguardStateController> mKeyguardMonitor;
@Inject Lazy<KeyguardUpdateMonitor> mKeyguardUpdateMonitor; @Inject Lazy<KeyguardUpdateMonitor> mKeyguardUpdateMonitor;
@Inject Lazy<BatteryController> mBatteryController;
@Inject Lazy<NightDisplayListener> mNightDisplayListener; @Inject Lazy<NightDisplayListener> mNightDisplayListener;
@Inject Lazy<ReduceBrightColorsController> mReduceBrightColorsController; @Inject Lazy<ReduceBrightColorsController> mReduceBrightColorsController;
@Inject Lazy<ManagedProfileController> mManagedProfileController; @Inject Lazy<ManagedProfileController> mManagedProfileController;
@@ -404,8 +402,6 @@ public class Dependency {
mProviders.put(UserInfoController.class, mUserInfoController::get); mProviders.put(UserInfoController.class, mUserInfoController::get);
mProviders.put(BatteryController.class, mBatteryController::get);
mProviders.put(NightDisplayListener.class, mNightDisplayListener::get); mProviders.put(NightDisplayListener.class, mNightDisplayListener::get);
mProviders.put(ReduceBrightColorsController.class, mReduceBrightColorsController::get); mProviders.put(ReduceBrightColorsController.class, mReduceBrightColorsController::get);

View File

@@ -35,6 +35,7 @@ import com.android.systemui.demomode.DemoModeController;
import com.android.systemui.dock.DockManager; import com.android.systemui.dock.DockManager;
import com.android.systemui.dock.DockManagerImpl; import com.android.systemui.dock.DockManagerImpl;
import com.android.systemui.doze.DozeHost; import com.android.systemui.doze.DozeHost;
import com.android.systemui.dump.DumpManager;
import com.android.systemui.media.dagger.MediaModule; import com.android.systemui.media.dagger.MediaModule;
import com.android.systemui.navigationbar.gestural.GestureModule; import com.android.systemui.navigationbar.gestural.GestureModule;
import com.android.systemui.plugins.qs.QSFactory; import com.android.systemui.plugins.qs.QSFactory;
@@ -126,6 +127,7 @@ public abstract class ReferenceSystemUIModule {
PowerManager powerManager, PowerManager powerManager,
BroadcastDispatcher broadcastDispatcher, BroadcastDispatcher broadcastDispatcher,
DemoModeController demoModeController, DemoModeController demoModeController,
DumpManager dumpManager,
@Main Handler mainHandler, @Main Handler mainHandler,
@Background Handler bgHandler) { @Background Handler bgHandler) {
BatteryController bC = new BatteryControllerImpl( BatteryController bC = new BatteryControllerImpl(
@@ -134,6 +136,7 @@ public abstract class ReferenceSystemUIModule {
powerManager, powerManager,
broadcastDispatcher, broadcastDispatcher,
demoModeController, demoModeController,
dumpManager,
mainHandler, mainHandler,
bgHandler); bgHandler);
bC.init(); bC.init();

View File

@@ -19,14 +19,17 @@ package com.android.systemui.statusbar.policy;
import android.annotation.Nullable; import android.annotation.Nullable;
import android.view.View; import android.view.View;
import com.android.systemui.Dumpable;
import com.android.systemui.demomode.DemoMode; import com.android.systemui.demomode.DemoMode;
import com.android.systemui.statusbar.policy.BatteryController.BatteryStateChangeCallback; import com.android.systemui.statusbar.policy.BatteryController.BatteryStateChangeCallback;
import java.io.PrintWriter; import java.io.PrintWriter;
import java.lang.ref.WeakReference; import java.lang.ref.WeakReference;
public interface BatteryController extends DemoMode, Dumpable, /**
* Controller for battery related information, including the charge level, power save mode,
* and time remaining information
*/
public interface BatteryController extends DemoMode,
CallbackController<BatteryStateChangeCallback> { CallbackController<BatteryStateChangeCallback> {
/** /**
* Prints the current state of the {@link BatteryController} to the given {@link PrintWriter}. * Prints the current state of the {@link BatteryController} to the given {@link PrintWriter}.

View File

@@ -38,11 +38,13 @@ import com.android.internal.annotations.VisibleForTesting;
import com.android.settingslib.fuelgauge.BatterySaverUtils; import com.android.settingslib.fuelgauge.BatterySaverUtils;
import com.android.settingslib.fuelgauge.Estimate; import com.android.settingslib.fuelgauge.Estimate;
import com.android.settingslib.utils.PowerUtil; import com.android.settingslib.utils.PowerUtil;
import com.android.systemui.Dumpable;
import com.android.systemui.broadcast.BroadcastDispatcher; import com.android.systemui.broadcast.BroadcastDispatcher;
import com.android.systemui.dagger.qualifiers.Background; import com.android.systemui.dagger.qualifiers.Background;
import com.android.systemui.dagger.qualifiers.Main; import com.android.systemui.dagger.qualifiers.Main;
import com.android.systemui.demomode.DemoMode; import com.android.systemui.demomode.DemoMode;
import com.android.systemui.demomode.DemoModeController; import com.android.systemui.demomode.DemoModeController;
import com.android.systemui.dump.DumpManager;
import com.android.systemui.power.EnhancedEstimates; import com.android.systemui.power.EnhancedEstimates;
import com.android.systemui.util.Assert; import com.android.systemui.util.Assert;
@@ -56,7 +58,8 @@ import java.util.concurrent.atomic.AtomicReference;
* Default implementation of a {@link BatteryController}. This controller monitors for battery * Default implementation of a {@link BatteryController}. This controller monitors for battery
* level change events that are broadcasted by the system. * level change events that are broadcasted by the system.
*/ */
public class BatteryControllerImpl extends BroadcastReceiver implements BatteryController { public class BatteryControllerImpl extends BroadcastReceiver implements BatteryController,
Dumpable {
private static final String TAG = "BatteryController"; private static final String TAG = "BatteryController";
private static final String ACTION_LEVEL_TEST = "com.android.systemui.BATTERY_LEVEL_TEST"; private static final String ACTION_LEVEL_TEST = "com.android.systemui.BATTERY_LEVEL_TEST";
@@ -70,6 +73,7 @@ public class BatteryControllerImpl extends BroadcastReceiver implements BatteryC
private final ArrayList<EstimateFetchCompletion> mFetchCallbacks = new ArrayList<>(); private final ArrayList<EstimateFetchCompletion> mFetchCallbacks = new ArrayList<>();
private final PowerManager mPowerManager; private final PowerManager mPowerManager;
private final DemoModeController mDemoModeController; private final DemoModeController mDemoModeController;
private final DumpManager mDumpManager;
private final Handler mMainHandler; private final Handler mMainHandler;
private final Handler mBgHandler; private final Handler mBgHandler;
protected final Context mContext; protected final Context mContext;
@@ -101,6 +105,7 @@ public class BatteryControllerImpl extends BroadcastReceiver implements BatteryC
PowerManager powerManager, PowerManager powerManager,
BroadcastDispatcher broadcastDispatcher, BroadcastDispatcher broadcastDispatcher,
DemoModeController demoModeController, DemoModeController demoModeController,
DumpManager dumpManager,
@Main Handler mainHandler, @Main Handler mainHandler,
@Background Handler bgHandler) { @Background Handler bgHandler) {
mContext = context; mContext = context;
@@ -110,6 +115,7 @@ public class BatteryControllerImpl extends BroadcastReceiver implements BatteryC
mEstimates = enhancedEstimates; mEstimates = enhancedEstimates;
mBroadcastDispatcher = broadcastDispatcher; mBroadcastDispatcher = broadcastDispatcher;
mDemoModeController = demoModeController; mDemoModeController = demoModeController;
mDumpManager = dumpManager;
} }
private void registerReceiver() { private void registerReceiver() {
@@ -134,6 +140,7 @@ public class BatteryControllerImpl extends BroadcastReceiver implements BatteryC
} }
} }
mDemoModeController.addCallback(this); mDemoModeController.addCallback(this);
mDumpManager.registerDumpable(TAG, this);
updatePowerSave(); updatePowerSave();
updateEstimateInBackground(); updateEstimateInBackground();
} }

View File

@@ -36,6 +36,7 @@ import com.android.systemui.demomode.DemoModeController;
import com.android.systemui.dock.DockManager; import com.android.systemui.dock.DockManager;
import com.android.systemui.dock.DockManagerImpl; import com.android.systemui.dock.DockManagerImpl;
import com.android.systemui.doze.DozeHost; import com.android.systemui.doze.DozeHost;
import com.android.systemui.dump.DumpManager;
import com.android.systemui.navigationbar.gestural.GestureModule; import com.android.systemui.navigationbar.gestural.GestureModule;
import com.android.systemui.plugins.qs.QSFactory; import com.android.systemui.plugins.qs.QSFactory;
import com.android.systemui.plugins.statusbar.StatusBarStateController; import com.android.systemui.plugins.statusbar.StatusBarStateController;
@@ -116,9 +117,12 @@ public abstract class TvSystemUIModule {
static BatteryController provideBatteryController(Context context, static BatteryController provideBatteryController(Context context,
EnhancedEstimates enhancedEstimates, PowerManager powerManager, EnhancedEstimates enhancedEstimates, PowerManager powerManager,
BroadcastDispatcher broadcastDispatcher, DemoModeController demoModeController, BroadcastDispatcher broadcastDispatcher, DemoModeController demoModeController,
DumpManager dumpManager,
@Main Handler mainHandler, @Background Handler bgHandler) { @Main Handler mainHandler, @Background Handler bgHandler) {
BatteryController bC = new BatteryControllerImpl(context, enhancedEstimates, powerManager, BatteryController bC = new BatteryControllerImpl(context, enhancedEstimates, powerManager,
broadcastDispatcher, demoModeController, mainHandler, bgHandler); broadcastDispatcher, demoModeController,
dumpManager,
mainHandler, bgHandler);
bC.init(); bC.init();
return bC; return bC;
} }

View File

@@ -42,6 +42,7 @@ import com.android.settingslib.fuelgauge.BatterySaverUtils;
import com.android.systemui.SysuiTestCase; import com.android.systemui.SysuiTestCase;
import com.android.systemui.broadcast.BroadcastDispatcher; import com.android.systemui.broadcast.BroadcastDispatcher;
import com.android.systemui.demomode.DemoModeController; import com.android.systemui.demomode.DemoModeController;
import com.android.systemui.dump.DumpManager;
import com.android.systemui.power.EnhancedEstimates; import com.android.systemui.power.EnhancedEstimates;
import com.android.systemui.statusbar.policy.BatteryController.BatteryStateChangeCallback; import com.android.systemui.statusbar.policy.BatteryController.BatteryStateChangeCallback;
@@ -80,6 +81,7 @@ public class BatteryControllerTest extends SysuiTestCase {
mPowerManager, mPowerManager,
mBroadcastDispatcher, mBroadcastDispatcher,
mDemoModeController, mDemoModeController,
mock(DumpManager.class),
new Handler(), new Handler(),
new Handler()); new Handler());
// Can throw if updateEstimate is called on the main thread // Can throw if updateEstimate is called on the main thread