如何在Windows UWP应用程序上获得低电池电量阈值?

时间:2017-08-09 16:57:55

标签: c# windows uwp batterylevel

在Windows电源选项中,您可以在操作系统通知何时电池处于低电量/临界电平时设置特定阈值(%)。我的问题是在我的C#UWP应用程序上获得这个价值吗?我找不到提供此功能的API来从OS获取值或事件。

我想知道是否有可能从OS得到阈值而不是硬编码值,如0.1为低,0.07为临界值。我指的是高级电源设置中的阈值百分比值,用户可以定义。

1 个答案:

答案 0 :(得分:0)

没有直接API可以创建它。

以下是示例代码

public Page()
{
    ....
    Battery.AggregateBattery.ReportUpdated += AggregateBattery_ReportUpdated;

}

private void AggregateBattery_ReportUpdated(Battery sender, object args)
{
    var batteryReport = Battery.AggregateBattery.GetReport();

    var percentage = (batteryReport.RemainingCapacityInMilliwattHours.Value / (double)batteryReport.FullChargeCapacityInMilliwattHours.Value);

    if ((percentage == 0.1 || percentage == 0.07) && batteryReport.Status == Windows.System.Power.BatteryStatus.Discharging)
    {
        // Your Code
    }
}