From 03fc504f7d25d3859018af5827a220ee6050c212 Mon Sep 17 00:00:00 2001 From: Torsten Grote Date: Wed, 28 Jun 2023 10:15:10 -0300 Subject: [PATCH] Log changes to LowPowerStandby in AndroidBatteryManager --- .../bramble/battery/AndroidBatteryManager.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/bramble-android/src/main/java/org/briarproject/bramble/battery/AndroidBatteryManager.java b/bramble-android/src/main/java/org/briarproject/bramble/battery/AndroidBatteryManager.java index 0bd13b0b2..2f65a939a 100644 --- a/bramble-android/src/main/java/org/briarproject/bramble/battery/AndroidBatteryManager.java +++ b/bramble-android/src/main/java/org/briarproject/bramble/battery/AndroidBatteryManager.java @@ -5,6 +5,7 @@ import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; +import android.os.PowerManager; import org.briarproject.bramble.api.battery.BatteryManager; import org.briarproject.bramble.api.battery.event.BatteryEvent; @@ -20,6 +21,8 @@ import static android.content.Intent.ACTION_BATTERY_CHANGED; import static android.content.Intent.ACTION_POWER_CONNECTED; import static android.content.Intent.ACTION_POWER_DISCONNECTED; import static android.os.BatteryManager.EXTRA_PLUGGED; +import static android.os.Build.VERSION.SDK_INT; +import static android.os.PowerManager.ACTION_LOW_POWER_STANDBY_ENABLED_CHANGED; import static java.util.logging.Level.INFO; import static java.util.logging.Logger.getLogger; @@ -57,6 +60,9 @@ class AndroidBatteryManager implements BatteryManager, Service { IntentFilter filter = new IntentFilter(); filter.addAction(ACTION_POWER_CONNECTED); filter.addAction(ACTION_POWER_DISCONNECTED); + if (SDK_INT >= 33) { + filter.addAction(ACTION_LOW_POWER_STANDBY_ENABLED_CHANGED); + } appContext.registerReceiver(batteryReceiver, filter); } @@ -76,6 +82,13 @@ class AndroidBatteryManager implements BatteryManager, Service { eventBus.broadcast(new BatteryEvent(true)); else if (ACTION_POWER_DISCONNECTED.equals(action)) eventBus.broadcast(new BatteryEvent(false)); + else if (SDK_INT >= 33 && LOG.isLoggable(INFO) && + ACTION_LOW_POWER_STANDBY_ENABLED_CHANGED.equals(action)) { + PowerManager powerManager = + ctx.getSystemService(PowerManager.class); + LOG.info("Low power standby now is: " + + powerManager.isLowPowerStandbyEnabled()); + } } } }