用于启用此功能的 API 仅在具有 (操作系统版本号 8.0.10492)或更高版本的设备上可用。在尝试使用此功能之前,您必须检查设备的操作系统版本。 |
如果用户已在其手机上启用节电模式功能,且电池低于使节电模式处于活动状态的最小电量阈值,将禁用推送通知的接收以节省电源。如果您的应用很大程度上依赖于推送通知,建议您检测何时启用节电模式,并警告用户当节电模式处于活动状态时将不会收到推送通知。
若要检测何时启用节电模式,您必须检测 PowerManager.PowerSavingModeEnabled 属性。因为此属性仅可用于运行 的设备,因此您必须在检查设备操作系统版本后通过反射访问此属性。以下示例向您显示了如何检测节电模式当前是否处于启用状态。
using Windows.Phone.System.Power; public void CheckBatterySaverState() { // The minimum phone version that supports the PowerSavingModeEnabled property Version TargetVersion = new Version(8, 0, 10492); if (Environment.OSVersion.Version >= TargetVersion) { // Use reflection to get the PowerSavingModeEnabled value bool powerSaveOn = (bool) typeof(PowerManager).GetProperty("PowerSavingModeEnabled").GetValue(null, null); if (powerSaveOn) { MessageBox.Show("Battery Saver enabled. This app won’t receive notifications when Battery Saver is active."); } } }