This tutorial describes the steps to retrieve the battery information from the device.
CTelephony
with active objects CTelephony::GetBatteryInfo()
to get the battery information CTelephony::TBatteryInfoV1
The result contains the battery charge level and the battery status. CTelephony::EGetBatteryInfoCancel
to cancel the asynchronous function CTelephony::EBatteryInfoChange
to get the notification of any changes to the battery information CTelephony::EBatteryInfoChangeCancel
to cancel the notification request. #include <e32base.h> #include <Etel3rdParty.h> class CClientApp : public CActive { private: CTelephony* iTelephony; CTelephony::TBatteryInfoV1 iBatteryInfoV1; CTelephony::TBatteryInfoV1Pckg iBatteryInfoV1Pckg; public: CClientApp(CTelephony* aTelephony); void SomeFunction(); private: /* These are the pure virtual methods from CActive that MUST be implemented by all active objects */ void RunL(); void DoCancel(); }; CClientApp::CClientApp(CTelephony* aTelephony) : CActive(EPriorityStandard), iTelephony(aTelephony), iBatteryInfoV1Pckg(iBatteryInfoV1) { //default constructor } void CClientApp::SomeFunction() { iTelephony->GetBatteryInfo(iStatus, iBatteryInfoV1Pckg); SetActive(); } void CClientApp::RunL() { if(iStatus==KErrNone) { CTelephony::TBatteryStatus batteryStatus = iBatteryInfoV1.iStatus; TUint chargeLevel = iBatteryInfoV1.iChargeLevel; } } void CClientApp::DoCancel() { iTelephony->CancelAsync(CTelephony::EGetBatteryInfoCancel); }