手机系统电池是否进入省电模式

  1. 创建一个新的 Android 应用程序项目。
  2. 在你的应用程序中添加一个 BroadcastReceiver(广播接收器)来监听电池状态的变化。
public class BatteryReceiver extends BroadcastReceiver {
   @Override
   public void onReceive(Context context, Intent intent) {
      int batteryLevel = intent.getIntExtra(BatteryManager.EXTRA_LEVEL, 0);
      int batteryScale = intent.getIntExtra(BatteryManager.EXTRA_SCALE, 100);
      int batteryPercent = (batteryLevel * 100) / batteryScale;

      // 省电模式
      boolean powerSaveModeOn = false;
      if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP) {
         powerSaveModeOn = intent.getBooleanExtra(BatteryManager.EXTRA_POWER_SAVE_MODE, false);
      }

      Log.i("BatteryReceiver", "Battery level: " + batteryPercent + "%, Power save mode: " + powerSaveModeOn);
   }
}
  1. 在 AndroidManifest.xml 文件中声明 BroadcastReceiver。

.

<receiver android:name=".BatteryReceiver">
   <intent-filter>
      <action android:name="android.intent.action.BATTERY_CHANGED"/>
   </intent-filter>
</receiver>
  1. 在你的应用程序中注册 BroadcastReceiver。
  2. BatteryReceiver batteryReceiver = new BatteryReceiver();
    IntentFilter filter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
    registerReceiver(batteryReceiver, filter);

    以上代码将监听电池状态的变化,并获取当前电池的电量百分比和省电模式状态。如果省电模式已经打开,则 powerSaveModeOn 的值将为 true,否则为 false。

猜你喜欢

转载自blog.csdn.net/mp624183768/article/details/129811035