How to Retrieve Remaining Battery Status of WP8 Programmatically?


If you are looking for a way to retrieve the current battery status of Windows Phone device, first let me inform you that the same is not available for WP7 device. But if you are looking for the same to implement in WP8 device, you can do it now.

 

Windows Phone 8 SDK exposes an API to retrieve the current battery status of the device which includes remaining percent and time. Let’s discuss more about it.

 

Windows Phone 8 SDK exposes an API to retrieve the current status of it’s battery i.e. the remaining amount (in %), and the remaining time. Also you will be able to track the remaining value changes using an event handler. The class named “Battery” is a sealed class present in the “Windows.Phone.Devices.Power” namespace and implements the “IBattery” interface.

 

It exposes GetDefault() method which returns the handle of the default battery. The two properties named RemainingChargePercent and RemainingDischargeTime returns you the remaining charge amount and time respectively. The event handler named RemainingChargePercentChanged will help you to get the charge remaining notification continuously.

 

 

Here is the meta data of the Battery class for your reference:

 
public sealed class Battery : IBattery
{
    public static Battery GetDefault();
    
    public int RemainingChargePercent { get; }
    public TimeSpan RemainingDischargeTime { get; }
    
    public event EventHandler<object> RemainingChargePercentChanged;
}

 

 

If you want to get the remaining status of the Windows Phone 8 device battery, use the said property as shown below to access the data accordingly:

 
var remainingPercent = Battery.GetDefault().RemainingChargePercent;
var remainingTimeSpan = Battery.GetDefault().RemainingDischargeTime;

 

Note that, the RemainingChargePercent will return you the remaining value in percentage and RemainingDischargeTime will return you the remaining time in TimeSpan format. In case you want to show in time format, you have to build the string from that properly.

 

In case you want to show the battery status continuously, implement the event handler and use those exposed properties to get the remaining status.

 

I hope that, this small but useful tip will help you if you are looking out for an way to get the battery status. Subscribe to my blog’s RSS Feed and Email Newsletter to get regular updates on article, tips & tricks. I am available on twitter, facebook and google+, connect with me there for any technical queries or discussions. Happy coding.


2 comments

  1. Will it be possible for WP7.8 too?

    ReplyDelete
  2. Not sure until we get the update and the SDK for WP7.8

    ReplyDelete


 
© 2008-2014 Kunal-Chowdhury.com | Designed by Kunal Chowdhury
Back to top